Label dinamico C# Visual Studio 2010

Iniciado por Eagle_Alwa, 25 Octubre 2013, 07:06 AM

0 Miembros y 1 Visitante están viendo este tema.

Eagle_Alwa

hola a todos soy nuevo en este foro, necesitu su ayuda:
necesito hacer un convertidor de tallas de calzado. con un combobox y Label. (el combobox contiene las medidas de talla por ejemplo: 7, 7.5, 8, etc. y los Label, la talla segun el Pais por ejemplo: Europa, EEUU, Mexico, etc.). La idea es de que al seleccionar cualquier item del combobox el Label muestre la talla del pais que le corresponde. esto esl o que tengo. pero no logro conseguir que el Label cambie a su respectiva talla segun lo seleccionado en el ComboBox:

Código (csharp) [Seleccionar]
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
       {
           
                     
           switch (ComboTallas.SelectedIndex)
           {
               case 0:
                   LblEuropa.Text = "39";
                   //LblUsa.Text = "7";
                   //LblMexico.Text = "5.5";
                   break;
               case 1:
                   LblEuropa.Text = "40";
                   //LblUsa.Text = "7.5";
                   //LblMexico.Text = "6";
                   break;
               case 2:
                   LblEuropa.Text = "41";
                   //LblUsa.Text = "8";
                   //LblMexico.Text = "6.5";
                   break;
           }


ayuda por favor si alguen me puede alumbrar de como se hace.

El Benjo

No estoy seguro si sea el caso, pero parece haber una discrepancia entre la función y el objeto de la sentencia switch: "DropDownList1" y "ComboTallas", coloca un punto de interrupción al comienzo del switch y checa la propiedad "SelectedIndex".

Otra cosa, espero que al ejecutar la aplicación estés quitando los comentarios, porque si no es así no sé cómo esperas que la propiedad Text cambie. ¬¬

Saludos.
www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.

Eleкtro

#2
Cita de: Eagle_Alwa en 25 Octubre 2013, 07:06 AMnecesito hacer un convertidor de tallas de calzado.

Yo ahí no veo ningún "Convertidor", asignas valores predefinidos, la aplicación no usa lógica alguna para convertir las unidades, si lo que quieres es predefinir tallas de la forma en la que lo estás haciendo, hazlo en un lugar separado, no me lo hagas diréctamente al seleccionar un item del combobox... muy dinámico eso no es, lo mejor es crear tu propio Type y así ya lo tienes todo resuelto:




Código (vbnet) [Seleccionar]
   Public Class Tallas

       Private _Name As String
       Private _Europa As Double
       Private _USA As Double
       Private _Mexico As Double

       Public Property Name() As String
           Get
               Return _Name
           End Get
           Set(ByVal value As String)
               _Name = value
           End Set
       End Property

       Public Property Europa() As Double
           Get
               Return _Europa
           End Get
           Set(ByVal value As Double)
               _Europa = value
           End Set
       End Property

       Public Property USA() As Double
           Get
               Return _USA
           End Get
           Set(ByVal value As Double)
               _USA = value
           End Set
       End Property

       Public Property Mexico() As Double
           Get
               Return _Mexico
           End Get
           Set(ByVal value As Double)
               _Mexico = value
           End Set
       End Property

   End Class


Código (vbnet) [Seleccionar]

       ' Agrego algunos zapatos con tallas predefinidas
       Dim Tallas As New List(Of Tallas) From { _
           New Tallas With {.Name = "Nombre de zapato 1", .Europa = 39, .USA = 7, .Mexico = 5.5}, _
           New Tallas With {.Name = "Nombre de zapato 2", .Europa = 40, .USA = 7.5, .Mexico = 6} _
       }

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

       ' Busco un zapato, por su nombre.
       ' Puedes hacer lo mismo comparando el nombre con la propiedad "Combobox.Text"
       Dim Zapato As Tallas = Tallas.Find(Function(x) x.Name = "Nombre de zapato 1")

       ' Muestro los datos que quiero de este zapato encontrado...
       MsgBox(String.Format("Nombre: {1}{0}Talla Europa: {2}{0}Talla USA: {3}{0}Talla Mexico: {4}", _
                            Environment.NewLine, _
                            Zapato.Name, Zapato.Europa, Zapato.USA, Zapato.Mexico))

   End Sub


No soy programador de C#, aqui tienes el código convertido pero no se si funcionará:

Código (csharp) [Seleccionar]

using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
public class Tallas
{

private string _Name;
private double _Europa;
private double _USA;

private double _Mexico;
public string Name {
get { return _Name; }
set { _Name = value; }
}

public double Europa {
get { return _Europa; }
set { _Europa = value; }
}

public double USA {
get { return _USA; }
set { _USA = value; }
}

public double Mexico {
get { return _Mexico; }
set { _Mexico = value; }
}

}

//=======================================================
//Service provided by Telerik (www.telerik.com)
//Conversion powered by NRefactory.
//Twitter: @telerik
//Facebook: facebook.com/telerik
//=======================================================


Código (csharp) [Seleccionar]


private void Form1_Load(object sender, EventArgs e)
{
// Agrego algunos zapatos con tallas predefinidas
List<Tallas> Tallas = new List<Tallas> {
new Tallas {
Name = "Nombre de zapato 1",
Europa = 39,
USA = 7,
Mexico = 5.5
},
new Tallas {
Name = "Nombre de zapato 2",
Europa = 40,
USA = 7.5,
Mexico = 6
}
};

// Busco un zapato, por su nombre.
// Puedes hacer lo mismo comparando el nombre con la propiedad "Combobox.Text"
Tallas Zapato = Tallas.Find(x => x.Name == "Nombre de zapato 1");

// Muestro los datos que quiero de este zapato encontrado...
Interaction.MsgBox(string.Format("Nombre: {1}{0}Talla Europa: {2}{0}Talla USA: {3}{0}Talla Mexico: {4}", Environment.NewLine, Zapato.Name, Zapato.Europa, Zapato.USA, Zapato.Mexico));

}

//=======================================================
//Service provided by Telerik (www.telerik.com)
//Conversion powered by NRefactory.
//Twitter: @telerik
//Facebook: facebook.com/telerik
//=======================================================






Cita de: El Benjo en 25 Octubre 2013, 08:10 AMOtra cosa, espero que al ejecutar la aplicación estés quitando los comentarios, porque si no es así no sé cómo esperas que la propiedad Text cambie. ¬¬

Yo también lo pensé xDDD