如果当前窗体中有大量TextBox对象,需要将所有对象的输入内容清空而又不想在代码中逐个设置Text属性,可以考虑使用OfType<>方法,用法:
IEnumerable<TextBox> textBoxes = this.Controls.OfType<TextBox>(); //所有同类型控件
foreach (TextBox textBox in textBoxes)//执行相同操作
textBox.Text = "";
显然,对于任 一类的对象均可考虑此方法,不单单适用于TextBox类
以上方法在VS 2008中可用
VS2005里没封装那个方法,可以通过以下方法实现相同功能:
foreach (Control textBox in this.Controls)
{
if (textBox.GetType().Name == "TextBox")//或者textBox.GetType().FullName == "System.Windows.Forms.TextBox"
textBox.Text = "";
}
IEnumerable<TextBox> textBoxes = this.Controls.OfType<TextBox>(); //所有同类型控件
foreach (TextBox textBox in textBoxes)//执行相同操作
textBox.Text = "";
显然,对于任 一类的对象均可考虑此方法,不单单适用于TextBox类
以上方法在VS 2008中可用
VS2005里没封装那个方法,可以通过以下方法实现相同功能:
foreach (Control textBox in this.Controls)
{
if (textBox.GetType().Name == "TextBox")//或者textBox.GetType().FullName == "System.Windows.Forms.TextBox"
textBox.Text = "";
}