Usuário com melhor resposta
Acessar Webcontrols com foreach

Pergunta
-
Pessoal esttou com uma duvida aqui.
Bom o que eu estou querendo é muito simples e faço toda hora em Windows Form, o problema é que estou tentanto fazer o mesmo em um projeto web e não estou conseguinto.
Bom quando eu quero limpar minhas textbox em no WindowsForm eu faço o seguinte:
foreach (Control txtx in Controls) { if (txtx is TextBox) { txtx.Text = string.Empty; } }
Isso no windows form Resolve o meu problema, o que eu estou tentando é fazer o mesmo no webform
teoricamente eu fazendo o mesmo procedimento funcionaria, ou seja no webform eu eu varreria os WebControls e pegaria todos os do tipo TextBox que estivesse dentro do meu webform.
Mas não estou conseguindo, deve ter algum detalhe que estou deixando de verificar na hora.
Se alguém tiver alguma informação sobre isso e puder me passar fico grato.
Elielson de Andrade elielson( a )gd.com.br www.despcompany.com www.emyface.com
Respostas
-
é um poquino diferente... pq existem varios controls na page q esquemos... como body, form, div... e etc... os seu textbox estao dentro do form... entao vc tem q percorrer todos os controls... e os controls q estao dentro deles....
basicamente eh assim:)
protected void Button1_Click(object sender, EventArgs e) { SetText(this, "XXXX"); } private void SetText(Control source, string text) { foreach (Control control in source.Controls) { if (control.HasControls()) { SetText(control, text); continue; } if (control is TextBox) { (control as TextBox).Text = text; } } }
What would Brian Boitano do ?
((2B || !2B) is Question) ?- Sugerido como Resposta Carlos Adriano Portes domingo, 28 de março de 2010 15:10
- Marcado como Resposta Elielson de Andrade segunda-feira, 29 de março de 2010 11:53
Todas as Respostas
-
é um poquino diferente... pq existem varios controls na page q esquemos... como body, form, div... e etc... os seu textbox estao dentro do form... entao vc tem q percorrer todos os controls... e os controls q estao dentro deles....
basicamente eh assim:)
protected void Button1_Click(object sender, EventArgs e) { SetText(this, "XXXX"); } private void SetText(Control source, string text) { foreach (Control control in source.Controls) { if (control.HasControls()) { SetText(control, text); continue; } if (control is TextBox) { (control as TextBox).Text = text; } } }
What would Brian Boitano do ?
((2B || !2B) is Question) ?- Sugerido como Resposta Carlos Adriano Portes domingo, 28 de março de 2010 15:10
- Marcado como Resposta Elielson de Andrade segunda-feira, 29 de março de 2010 11:53
-