Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/04/2010, 20:05
daniel44
 
Fecha de Ingreso: abril-2010
Mensajes: 19
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Obtener Id name de un checkbox C#

Si entendi bien tu pregunta, la solución es agregar el manejador de eventos al evento CheckedChanged de cada control que creas, asi:

Código:
chkList1.CheckedChanged += Activate_Click;
Sin embargo el evento no se dispararia de manera automatica ya que los checkbox no generarian el postback, tendrias que establecer la propiedad a verdadero:

Código:
chkList1.AutoPostBack = true;
Con esto cada que selecciones uno de tus controles creados se disparará el manejador de eventos que creaste (Activate_Click).

Para recuperar el id del control que esta disparando tienes que referenciarlo en tu manejador de eventos y obtener su propiedad ID:

Código:
protected void Activate_Click(object sender, EventArgs e)
    {
        CheckBox chk = (CheckBox)sender;
        string x = chk.ID;
    }
Por otro lado, si lo que quieres es que cuando otro control dispara el evento Activate_Click obtener los ID de los checkbox marcados, seria algo asi:

Código:
foreach (Control c in PnlControl.Controls)
        {

            if (c.GetType() == typeof(CheckBox))
            {
                using (CheckBox chk = (CheckBox)c)
                {
                    if(chk.Checked)
                        y = chk.ID;
                }
            }
            
        }
Suerte