如何用C#清除Form中所有的文本框内容?
站在用户的角度思考问题,与客户深入沟通,找到辽中网站设计与辽中网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖辽中地区。
分两种情况:
C#清除文本框中内容(1)
当所有的文本框都是顶级控件,即它们都直接位于this.Controls(或groupBox.Controls)中,此时遍历一遍清除即可。
C#清除文本框中内容(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),C#清除文本框中内容的目的就达到了。
【编辑推荐】
当前文章:C#清除文本框中内容问题之解答
路径分享:http://www.mswzjz.cn/qtweb/news9/507359.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能