• 微软原版系统

  • 一键重装系统

  • 纯净系统

  • 在线技术客服

魔法猪系统重装大师 一键在线制作启动 U 盘 PE 系统 用一键重装的魔法拯救失去灵魂的系统
当前位置:首页 > 教程 > 电脑教程

c#快速清除Form中所有文本框中内容

时间:2015年04月02日 15:21:54    来源:魔法猪系统重装大师官网    人气:7635

如何清除Form中所有的文本框内容?

分两种情况:

(1)当所有的文本框都是顶级控件,即它们都直接位于this.Controls(或groupBox.Controls)中,此时遍历一遍清除即可。

(2)当文本框不全处于顶级,即部分包含在某些容器控件内,如groupBox中,由于控件在窗体中是严格分级摆放的。此时的文本框有的位于this.Controls中(即Form控件集中),有的则位于groupBox.Controls中。

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

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

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

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

          private void ClearText(Control ctrlTop)
        {
            if (ctrlTop.GetType() == typeof(TextBox))
                ctrlTop.Text = "";
            else
            {
                foreach (Control ctrl in ctrlTop.Controls)
                {
                    ClearText(ctrl); //循环调用
                }
            }
        }

在需要的地方,直接调用ClearText(this)就大功告成了

快速,清除,Form,中,所有,文本,框中,内容,如何,
栏目:电脑教程 阅读:1000 2023/12/27
Win7教程 更多>>
U盘教程 更多>>
Win10教程 更多>>
魔法猪学院 更多>>

Copyright © 2015-2023 魔法猪 魔法猪系统重装大师

本站发布的系统仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,否则后果自负,请支持购买微软正版软件。

在线客服 查看微信 返回顶部