永发信息网

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

答案:5  悬赏:70  手机版
解决时间 2021-12-02 17:26
  • 提问者网友:别再叽里呱啦
  • 2021-12-02 02:54
c# 一次性清空form内所有文本框内容
最佳答案
  • 五星知识达人网友:我住北渡口
  • 2021-12-02 04:23
有一个简单的方法:
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 = "";
}
}
全部回答
  • 1楼网友:等灯
  • 2021-12-02 06:58
还不如重新刷新下页面呢
  • 2楼网友:独行浪子会拥风
  • 2021-12-02 06:42
private void ClearTextBox(Control ParentCtl)
{
Foreach(Control SubCtl in ParentCtl.Controls)
{
if(SubCtl.Controls.Count > 0)
{
ClearTextBox(SubCtl);
}
else if (SubCtl is TextBox)
{
(TextBox)SubCtl.Clear();
}
}
}
  • 3楼网友:独行浪子会拥风
  • 2021-12-02 05:58
foreach(Control c in Controls) if(c is TextBox)c.Text = "";
//或者
for (int i =0 ;iif (Controls[i] is TextBox)
Controls[i].Text = "";

foreach是关键字,同for一样使用,1L的代码...好像不能编译过去
  • 4楼网友:夜余生
  • 2021-12-02 04:41
这是我以前写的函数,用过,没问题
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
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯