zoukankan      html  css  js  c++  java
  • c#快速清除所有文本框中内容(转)

    如何清除Form中所有的文本框内容?分两种情况:(1)当所有的文本框都是顶级控件,即它们都直接位于this.Controls(或groupBox.Controls)中,此时遍历一遍清除即可。(2)当文本框不全处于顶级,即部分包含在某些容器控件内,如groupBox中,由于控件在窗体中是严格分级摆放的。此时的文本框有的位于this.Controls中(即Form控件集中),有的则位于groupBox.Controls中。

        对于(1),直接这样写就可:

    //或为groupBox1.Controls/panel1.Controls
    foreach (Control ctrl in Controls)
    {
        if (ctrl is TextBox)
         ctrl.Text = "";
     }

     写出这样几行简单的代码是为了强调一个地方,当某些文本框是用户自己定义的一个继承TextBox的控件时,像上面那样写,都可识别,但若写成:if (ctrl.GetType() == typeof(TextBox)),这种判断方式相对严格,自定义文本框不会被识别。

        为了解决(2)中提出的问题,可写一个更为灵活通用的方法来检测出这些文本框,并将之清空。方法如下:

    private void ClearText(Control ctrlTop)
    {<br>    if (ctrlTop.GetType() == typeof(TextBox))
        ctrlTop.Text = "";
        else
        {
            foreach (Control ctrl in ctrlTop.Controls)
            {
                ClearText(ctrl); //循环调用
             }
        }
    } 
  • 相关阅读:
    【51nod1674】区间的价值 V2(算法效率--位运算合并优化+链表实现)
    【bzoj 2339】[HNOI2011]卡农(数论--排列组合+逆元+递推)
    关于中国剩余定理{附【转】中国剩余定理 }
    JavaScript操作BOM
    学员操作—统计考试平均成绩
    JavaScript基础
    JDBC
    进制
    事务
    复习
  • 原文地址:https://www.cnblogs.com/wenjie0904/p/10051949.html
Copyright © 2011-2022 走看看