2013年12月25日 星期三

C# 善用groupBox對控制項的特性

// 使用一個 GroupBox,並在 GroupBox 中放入數個 TextBox, CheckBox, Button 等
// 利用 GroupBox.Controls 去修改 GroupBox 中 TextBox, CheckBox, Button 等控制項的屬性
 
private void Form3_Load(object sender, EventArgs e)
{
    // foreach  是用來顯示整數陣列的內容。
    //對於在陣列或物件集合中實作 System.Collections.IEnumerable System.Collections.Generic.IEnumerable<T> 介面的每個項目,foreach 陳述式會重複內嵌陳述式群組。foreach 陳述式是用來逐一查看集合,以取得所需的資訊,但是不能用來加入或移除來源集合的項目,以避免無法預期的副作用。如果您必須加入或移除來源集合的項目,請使用 for 迴圈。


    // 取得 groupBox1 中所有的控制項,用 foreach 逐一讀取。
    // 可以針對 groupBox1 內的所有控制項做修改。
    foreach (Control ctl in groupBox1.Controls)
    {

        if (ctl is CheckBox) // 判斷為 CheckBox 時,將 CheckBox.Checked 設為 True
            ((CheckBox)ctl).Checked = true;
        else if (ctl is TextBox) // 判斷為 TextBox 時,將 CheckBox.Text 設為 "Hello world!"
            ((TextBox)ctl).Text = "";
        else if (ctl is Button) // 判斷為 Button 時,將 Button.Text 設為 "OK"。並建立 Click 事件。
        {
            ((Button)ctl).Text = "OK";
            ((Button)ctl).Click += new EventHandler(Form3_Click);
        }
           
    }

}

void Form3_Click(object sender, EventArgs e)
{
    MessageBox.Show("Hello World!");
}

沒有留言:

張貼留言