SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: Alexia2008 en Viernes 15 de Agosto de 2008, 23:57

Título: Como captar el contenido de una etiqueta en C#
Publicado por: Alexia2008 en Viernes 15 de Agosto de 2008, 23:57
Estoy desarrollando un programa en C # en el cual he puesto 3 etiquetas: "label1", "label2" y "label3"
Cada etiqueta tiene un texto diferente a las otras 2.
Ahora quiero crear un evento conjunto para las 3 etiquetas de tal manera que cuando haga
click sobre una de ellas pueda disponer de su contenido en una variable y no se como hacerlo.
Ruego ayuda.
Ruth
Título: Re: Como captar el contenido de una etiqueta en C#
Publicado por: Mollense en Sábado 16 de Agosto de 2008, 08:54
Cita de: "Alexia2008"
Estoy desarrollando un programa en C # en el cual he puesto 3 etiquetas: "label1", "label2" y "label3"
Cada etiqueta tiene un texto diferente a las otras 2.
Ahora quiero crear un evento conjunto para las 3 etiquetas de tal manera que cuando haga
click sobre una de ellas pueda disponer de su contenido en una variable y no se como hacerlo.
Ruego ayuda.
Ruth
No te entiendo. ¿Podés dar un ejemplo?
Para asignar un mismo evento a los 3 labels es fácil, pero primero explicate un poco mejor.
Título: Re: Como captar el contenido de una etiqueta en C#
Publicado por: Alexia2008 en Lunes 18 de Agosto de 2008, 11:33
Tal como he puesto en mi primer mensaje, en el programa que estoy haciendo habrán 3 etiquetas "label1", "label2" y "label3".
En determinados momentos de la ejecución del programa esas 3 etiquetas cambiarán su texto.
Por ejemplo, la "label1" podrá tener como texto "Amarillo", la "label2" "Rojo" y la "label3", "Azul".
Para yo saber que etiqueta ha clicado el usuario del programa puedo hacer un evento para cada etiqueta y listos.
Pero yo sé que con UN SOLO EVENTO (sin necesidad de hacer 3 eventos), se pueden gestionar las 3 etiquetas de tal
manera que cuando el usuario haga click en una de ellas, por ejemplo, la que tiene el texto "Azul", ese texto,
"Azul" se coloque en una variable, pero si clica en cualquiera de las otras dos etiquetas el texto que se asignará
a la variable será el que contenga la etiqueta clicada.
Espero que quede claro lo que necesito.
A ver si tengo suerte.
Ruth
Título: Re: Como captar el contenido de una etiqueta en C#
Publicado por: Mollense en Lunes 18 de Agosto de 2008, 16:08
Cita de: "Alexia2008"
Tal como he puesto en mi primer mensaje, en el programa que estoy haciendo habrán 3 etiquetas "label1", "label2" y "label3".
En determinados momentos de la ejecución del programa esas 3 etiquetas cambiarán su texto.
Por ejemplo, la "label1" podrá tener como texto "Amarillo", la "label2" "Rojo" y la "label3", "Azul".
Para yo saber que etiqueta ha clicado el usuario del programa puedo hacer un evento para cada etiqueta y listos.
Pero yo sé que con UN SOLO EVENTO (sin necesidad de hacer 3 eventos), se pueden gestionar las 3 etiquetas de tal
manera que cuando el usuario haga click en una de ellas, por ejemplo, la que tiene el texto "Azul", ese texto,
"Azul" se coloque en una variable, pero si clica en cualquiera de las otras dos etiquetas el texto que se asignará
a la variable será el que contenga la etiqueta clicada.
Espero que quede claro lo que necesito.
A ver si tengo suerte.
Ruth
Ok, ahora creo que sí.

Vas a necesitar un manejador parecido a este:
Código: Text
  1. private void label_Click(object sender, EventArgs e)
  2. {
  3.     string strValor=((Label)(sender)).Text;
  4. }
  5.  

Lo asignás a todos los Labels y listo

Un saludo
Título: Re: Como captar el contenido de una etiqueta en C#
Publicado por: Alexia2008 en Martes 19 de Agosto de 2008, 13:16
Muchas gracias Mollense,
El codigo que me has facilitado me ha resuelto el problema.
Ruth