如果组合框的文本改变重置所有文本框的形式

问题描述:

我有一个Form,当我选择从ComboBox值,所有TextBox ES(around150)及以下Label小号得到与我从阅读日志获取信息变更。如果组合框的文本改变重置所有文本框的形式

问题在于某些日志没有全部信息,所以该字段应保持空白。问题是当TextBox以前已经包含信息,当我更改ComboBox时,此信息不会重置。

我试着用Button扫清所有TextBox上课,但我有160

private void button2_Click_1(object sender, EventArgs e) 
{ 
    textbox1.Clear();// do it for all the textboxs 
} 

除了Steve's答案, es嵌套在其他容器中(例如GroupBox),而不是全部直接放在您的Form上,则必须递归到子容器中:

private void ClearTextBoxes(Control container) 
{ 
    foreach(TextBox textBox in container.Controls.OfType<TextBox>()) 
     textBox.Clear(); 
    foreach(Control control in container.Controls) 
     ClearTextBoxes(control); 
} 

,并调用此类似:

private void button2_Click_1(object sender, EventArgs e) 
{ 
    ClearTextBoxes(this); // "this" being your Form 
} 
+0

感谢youu的工作 –

您可以使用此:如果你有TextBox

public void ResetAllTextBoxes() 
{ 
    // Iterate over all Controls in the current form 
    foreach (Control control in this.Controls) 
     // If the control is a TextBox ... 
     if (control is TextBox) 
      // ... clear its text 
      (control as TextBox).Text = ""; 
}