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?一個一個設計上去不累嗎?爲什麼不寫一個控件然後自動(依據數據綁定)部署產生一堆? -------------------------------------------------------------------------------------------------------@以專業開發人員爲伍

有時間一定要去研究一下數據綁定到底是什麼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章