none
Cambiar las propiedades de todos los TextBox RRS feed

  • Pregunta

  • Tengo una duda. Si tengo 50 textbox que luego de apretar un boton todos deben poner su propiedad text en String.Empty.

    Como hago para no tener que asignarlos uno por uno? 


    Rodrigo Mocca

    martes, 5 de febrero de 2013 5:01

Respuestas

  • Si todos pertenecen a un mismo formulario (estoy imaginando que estamos hablando de Windows Forms), puede iterar sobre la colección Controls:

    private void btnBorrar_Click(object sender, EventArgs e)
    {
        foreach(TextBox tb in Controls.OfType<TextBox>())
        {
            tb.Text = String.Empty;
        }
    }


    Jose R. MCP
    Code Samples


    martes, 5 de febrero de 2013 5:29
    Moderador

Todas las respuestas

  • Si tienes 50 variables, te toca asignarlas las 50 a mano, no hay mucha otra alternativa (a menos que nos pongamos con cosas un poco más raras de reflexion y demás).

    Si las tuvieras en una lista por ejemplo, podrías recorrer la lista y ejecutar contra cada elemento de la lista.


    Vicente Cartas Espinel - MVP XNA/DirectX

    Blog about C# and XNA Development

    Blog about Role Playing Games

    martes, 5 de febrero de 2013 5:04
  • no son 50 variables. Son 50 TextBox (no son 50 en realidad, pregunto en el hipotetico caso de un formulario de registro que tenga varios textbox) y quiero que luego de apretar un boton todos pongan su propiedad Text en String.Empty.

    No hay manera de acceder a los controles dentro del Form?


    Rodrigo Mocca

    martes, 5 de febrero de 2013 5:07
  • Si todos pertenecen a un mismo formulario (estoy imaginando que estamos hablando de Windows Forms), puede iterar sobre la colección Controls:

    private void btnBorrar_Click(object sender, EventArgs e)
    {
        foreach(TextBox tb in Controls.OfType<TextBox>())
        {
            tb.Text = String.Empty;
        }
    }


    Jose R. MCP
    Code Samples


    martes, 5 de febrero de 2013 5:29
    Moderador