none
Métodos com parâmetros variáveis RRS feed

  • Pergunta

  • Pessoal, boa tarde. Eu tenho alguns Web Forms com Vários TextBox e DropDownlist, mas em quantidades diferentes, e preciso escrever métodos para limpar o conteúdo dos mesmos. Como eu tenho uma classe para métodos semelhantes, gostaria de saber se há como fazer um método(único), cujos argumentos eu passo do tipo TextBox ou DropDownList, porem em quantidades diferentes. Mas apenas um método, tipo assim:

    MeuMetod(varParametros);

    Aí eu chamo:

    MeuMetodo(TextBox1,TextBox2,DropDownList1);
    MeuMetodo(TextBox1,TextBox2,TextBox3,DropDownList1,DropDownList2,TextBox4);
    MeuMetodo(TextBox1,TextBox2,TextBox3);

    Tem como? É possivel?

    Atenção: Não estou falndo de OverLoad, pois dessa forma, teria que escrever tantos quantos possíveis. Caso não seja possível(acho que não) ter TextBox e DropDown, posso criar dois, um pra cada, mas aceites parâmetros variáveis(em quantidade e não tipo).
    segunda-feira, 23 de julho de 2012 17:17

Respostas

  • Boa tarde pnet,

    Tem como sim, tente assim:

            void MeuMetodo(params object[] controls){
                foreach(var control in controls){
                    if (control is TextBox)
                        ((TextBox)control).Text = String.Empty;
                    else if (control is DropDownList)
                    {
                        ((DropDownList)control).Text = String.Empty;
                        ((DropDownList)control).SelectedValue = String.Empty;
                    }
                }
            }


    Att,


    • Editado Vitor Hugo Salgado segunda-feira, 23 de julho de 2012 20:03 Erro
    • Sugerido como Resposta Romy Moura segunda-feira, 23 de julho de 2012 20:39
    • Marcado como Resposta pnet terça-feira, 24 de julho de 2012 20:40
    segunda-feira, 23 de julho de 2012 20:00