AJUDA COM FUNCAO PARA LIMPAR TODOS CAMPOS
Bom dia.
Estou criando a seguinte função para limpar todos controles do meu windows form.
Porem parece que quando eu tenho controles dentro de um groupBox ele nao funciona. Como posso fazer isso funcionar? Teria que ter um laço dentro de um groupbox?
Estou criando a seguinte função para limpar todos controles do meu windows form.
Porem parece que quando eu tenho controles dentro de um groupBox ele nao funciona. Como posso fazer isso funcionar? Teria que ter um laço dentro de um groupbox?
foreach (Control c in this.Controls)
{
if (c.GetType().Name == [Ô]TextBox[Ô])
{
((TextBox)c).Text = [Ô][Ô];
}
else if (c.GetType().Name == [Ô]CheckBox[Ô])
{
((CheckBox)c).Checked = false;
}
else if (c.GetType().Name == [Ô]CheckedListBox[Ô])
{
for (int i = 0; i < ((CheckedListBox)c).Items.Count; i++)
{
((CheckedListBox)c).SetItemChecked(i, false);
}
}
else if (c.GetType().Name == [Ô]MaskedTextBox[Ô])
{
((MaskedTextBox)c).Text = [Ô][Ô];
}
else if (c.GetType().Name == [Ô]ComboBox[Ô])
{
((ComboBox)c).SelectedIndex = -1;
}
else if (c.GetType().Name == [Ô]DateTimePicker[Ô])
{
((DateTimePicker)c).Value = DateTime.Now ;
}
}
Olá!
Todo controle possui a propriedade Controls.
Basta usar recursividade para verificar o Controls do Controls do pai. Manjou?
Abraços!
Todo controle possui a propriedade Controls.
Basta usar recursividade para verificar o Controls do Controls do pai. Manjou?
Abraços!
Entendi. Não sabia que todos controles tinham essa propriedade, ai ficou fácil.
Obrigado
Obrigado
private void f_Limpa(Control controle)
{
foreach (Control c in controle.Controls)
{
if (c.GetType().Name == [Ô]TextBox[Ô])
{
((TextBox)c).Text = [Ô][Ô];
}
else if (c.GetType().Name == [Ô]CheckBox[Ô])
{
((CheckBox)c).Checked = false;
}
else if (c.GetType().Name == [Ô]CheckedListBox[Ô])
{
for (int i = 0; i < ((CheckedListBox)c).Items.Count; i++)
{
((CheckedListBox)c).SetItemChecked(i, false);
}
}
else if (c.GetType().Name == [Ô]MaskedTextBox[Ô])
{
((MaskedTextBox)c).Text = [Ô][Ô];
}
else if (c.GetType().Name == [Ô]ComboBox[Ô])
{
((ComboBox)c).SelectedIndex = -1;
}
else if (c.GetType().Name == [Ô]DateTimePicker[Ô])
{
((DateTimePicker)c).Value = DateTime.Now;
}
this.f_Limpa(c); // aqui chamo a mesma funçao pra limpar os filhos
}
}
Tópico encerrado , respostas não são mais permitidas