Usuário com melhor resposta
Percorrer todos textbox

Pergunta
-
Galera, eu tinha 1 função em uma aplicação asp .net 1.1 que eram assim:
//DESABILITA TEXTBOX´S
public void DisableTextBox(Control pai, bool enabled){
foreach (Control ctl in pai.Controls){
if(ctl is TextBox && ((TextBox)ctl).Text != ""){
((TextBox)ctl).Enabled = enabled;
}
else if(ctl is eWorld.UI.MaskedTextBox && ((eWorld.UI.MaskedTextBox)ctl).Text != ""){
((eWorld.UI.MaskedTextBox)ctl).Enabled = enabled;
}
else if(ctl.Controls.Count > 0){
DisableTextBox(ctl,enabled);
}
}
}
Porem agora que estou começando com o 2.0 essa função não funciono e me apresentou um erro assim:
Warning 1 Expressão especificada nunca é do tipo ('TextBox') fornecido
Error 2 Não é possível converter o tipo 'System.Web.UI.Control' em 'TextBox'
Alguem tem ideia do que seja?
Respostas
Todas as Respostas
-
Dá uma olhada no debug e veja se ele esta lendo somente textbox, afinal vc força o tipo no if, pode ser que ele esteja tentando converter um cara que nao seja textbox.
pode verificar ? caso seja apenas textbox me avise que pensamos em algo.
Abraços -
Na verdade não posso debugar porque fiz essa função em uma classe onde tenho varias funções para tratamentos e tal e a logica esta correta pq ele percorre todos os controles verificando cada tipo e comparando se for Textbox ai sim que faz alguma coisa, mesmo pq minha maior duvida é que eu sempre utilizei essa função no 1.1 e so agora q estou começando a mecher com o 2.0 e tentei usar que deu zica.. mas valeu ajuda, pq aqui ta tensu.. dificil sair uma resposta!
-
-
Né isso não parceiro.. o erro não é em run time.. é na hora de compilare esta dando nessa linha:
ctl is TextBox = Warning 1 Expressão especificada nunca é do tipo ('TextBox') fornecido
((TextBox)ctl).Text = Error 2 Não é possível converter o tipo 'System.Web.UI.Control' em 'TextBox'
-
-
-