ForEach 對所有控制項設定唯讀
對 所有控制項 設定屬性 這個例子是很常用的
這也是foreach最常使用到的功能
如果是一般的容器 參數就用 容器的name
對表單 用this就可以了
        private void Form1_Load(object sender, EventArgs e)
        {
            DisableTextBox(panel1);//針對panel 的textbox checkbox 設定唯讀
            DisableTextBox(this);//針對form1 的textbox checkbox 設定唯讀
        }
        private void button1_Click(object sender, EventArgs e)
        {
            EnableTextBox(panel1);//針對panel
            EnableTextBox(this);//針對form1
        }
        public static void DisableTextBox(Control control)
        {
            if (control.HasChildren)
            {
                foreach (Control subControl in control.Controls)
                {
                    if (subControl is TextBox)
                        (subControl as TextBox).ReadOnly = true;
                    else if (subControl is CheckBox)
                        (subControl as CheckBox).Enabled = false;
                }
            }
        }
        public static void EnableTextBox(Control control)
        {
            if (control.HasChildren)
            {
                foreach (Control subControl in control.Controls)
                {
                    if (subControl is TextBox)
                        (subControl as TextBox).ReadOnly = false;
                    else if (subControl is CheckBox)
                        (subControl as CheckBox).Enabled = true;
                }
            }
        }
如有錯誤 歡迎指正