none
limite de checkbox RRS feed

  • Pregunta

  • Hola amigos, necesto su ayuda, tengo 20 checlbox los cuales necesito que solo se puedan tickear hasta 5 maximo nomas, osea si tickeo un 6º me mande un mensaje indicando que solo permite 5 a la vez. Gracias
    jueves, 27 de mayo de 2010 14:49

Respuestas

  • hola

    podrias hacer que los checkbox se registen en el mismo evento CheckedChanged y cuando marcas uno

    podria ser algo como esto

    private void CheckBox1_CheckedChanged(Object sender, EventArgs e) {

        int count = 0;
        foreach(Control crtl in GroupBox1.Controls)
        {
            if(ctrl is CheckBox)
            {
              CheckBox check = ctrl as CheckBox;
              if(check.Checked)
                count++;
            }
        }
       
        if(count > 5)
        {
            MessageBox.Shoaw("Solo puede marcar 5 checks");
            CheckBox check = sender as CheckBox;
            check.Checked = false;
        }

    }

    por supeusto a todos los checkbox que tengas le deebs asignar el mismo metodo de evento en este caso CheckBox1_CheckedChanged

    y de ser posible agrega los cjeck en un contenedor en este caso use un GroupBox

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Aprendis24 jueves, 27 de mayo de 2010 16:37
    jueves, 27 de mayo de 2010 14:57

Todas las respuestas

  • tambien estos checkbox los tengo dentro de un groupbox.
    jueves, 27 de mayo de 2010 14:51
  • hola

    podrias hacer que los checkbox se registen en el mismo evento CheckedChanged y cuando marcas uno

    podria ser algo como esto

    private void CheckBox1_CheckedChanged(Object sender, EventArgs e) {

        int count = 0;
        foreach(Control crtl in GroupBox1.Controls)
        {
            if(ctrl is CheckBox)
            {
              CheckBox check = ctrl as CheckBox;
              if(check.Checked)
                count++;
            }
        }
       
        if(count > 5)
        {
            MessageBox.Shoaw("Solo puede marcar 5 checks");
            CheckBox check = sender as CheckBox;
            check.Checked = false;
        }

    }

    por supeusto a todos los checkbox que tengas le deebs asignar el mismo metodo de evento en este caso CheckBox1_CheckedChanged

    y de ser posible agrega los cjeck en un contenedor en este caso use un GroupBox

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marcado como respuesta Aprendis24 jueves, 27 de mayo de 2010 16:37
    jueves, 27 de mayo de 2010 14:57
  • Leandro como le asigno un metodo de evento a un checkbox, seria algo como esto??

    private void checkBox1_CheckedChanged(object sender, EventArgs e)
            {
                int count = 0;
                foreach (Control crtl in groupBox1.Controls)
                {
                    if (crtl is CheckBox)
                    {
                        CheckBox check = crtl as CheckBox;
                        if (check.Checked)
                            count++;                   
                    }
                }
                if (count > 5)
                {
                    MessageBox.Show("Solo puede marcar hasta 5 CheckBox");
                    CheckBox check = sender as CheckBox;
                    check.Checked = false;
                }
            }

    private void checkBox2_CheckedChanged(object sender, EventArgs e)
    {

         checkBox1_CheckedChanged();

    }

     

     

    jueves, 27 de mayo de 2010 15:26
  • hola

    no, seria el seleccionar los checkbox y presionar boton derecho, veras la lsita de propiedades

    luego en el "Solution Explorer" veras un icono con forma de rayo de color amarillo, si lo presionas veras elo eventos

    selecciona donde dice CheckedChanged

    veras un combo qeu se deplega alli seguro aparece el checkBox1_CheckedChanged

    bien seleccionalo y eso es todo, has asignado un habdler del evento del control

     

    si te deja hacerlo para seleccionado todo junto bien, sino deberas repetir estos pasos para cada control, pero en todo seleccionas del combo el mismo metodo que se lista

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 27 de mayo de 2010 16:31
  • Muchas Gracias me estava llendo por otro lado.
    jueves, 27 de mayo de 2010 16:38