C#Form.SplitContainer中清除控件textbox值(窗体.容器.控件)

问题背景

早上在完善不确定度计算器时,想要清空实验数据输入时所有textbox控件值。

问题代码


        private void 清除_Click(object sender, EventArgs e)
        {
            foreach (Control c in this.splitContainer1.Controls)//此处找不到controls控件集合
            {
                if (c is TextBox)
                {
                    c.Text ="";
                }
            }

        }

问题解决

后来返回设计界面仔细检查才发现SplitCtainer中包含panel1、panel2两个子容器。
于是.panel2.Contrlos解决(注意在".“后提示代码并未显示controls,要勇敢地去”.")

正确清除代码

  private void 清除_Click(object sender, EventArgs e)
        {
            foreach (Control c in this.splitContainer1.Panel2.Controls)
            {
                if (c is TextBox)
                {
                    c.Text ="";
                }
            }

        }

问题延申

此处使用了foreach 循环语句遍历控件。
但CSDN以为老哥的话让我思考了很久

其实更多时候我会问我们的程序员:怎么会有15个TextBox?一个一个设计上去不累吗?为什么不写一个控件然后自动(依据数据绑定)部署产生一堆? -------------------------------------------------------------------------------------------------------@以专业开发人员为伍

有时间一定要去研究一下数据绑定到底是什么。

猜你喜欢

转载自blog.csdn.net/chenmo2019/article/details/83537203