c# 一次性清空form内所有文本框内容

来源:百度知道 编辑:UC知道 时间:2024/05/15 13:03:55
如果想一次清空form内所有文本框内容,这样的程式怎么写?请高手帮帮忙
rightmin 你的代码我编译了一下,能通过编译但是不起作用,不能将相应的文本内容清空。我的textbox是放在groupbox中的,应该没有影响吧?
zhangweiwd2003 谢谢你,不过我要的是c#代码。
xydlmnn 刷新是刷新 难道会重载么?

有一个简单的方法:
foreach (Control Ctrol in this.Controls)
{
if (Ctrol is TextBox)
{
Ctrol.Text = "";
}
}
这里的Control Ctrol表示某个控件Ctrol,this指代某个容器,这个就是指代Form1,这个this可以换成其他容器的名字,假如要清panel1上的东西,就写panel1.Controls

写第一个Control的时候,VS是不会提示你的,至少我的电脑不会。
当然有影响啦,this指代的窗体,既然文本框不在窗体呢,就要把this换成了groupbox了。假设那个groupbox是groupbox1,那么
foreach (Control Ctrol in groupbox1.Controls)
{
if (Ctrol is TextBox)
{
Ctrol.Text = "";
}
}

这是我以前写的函数,用过,没问题
Public Sub clearText(ByVal pForm As Form)
Dim Obj As Object

For Each Obj In pForm.Controls

If TypeOf Obj Is TextBox Then Obj.text = ""
If TypeOf Obj Is ComboBox Then Obj.text = ""

Next Obj

End Sub

foreach(Control c in Controls) if(c is TextBox)c.Text = "";
//或者
for (int i =0 ;i<Controls.