Winform/C#入門程式設計之第二部分常用控制元件(五:單選框控制元件RadioButton)
阿新 • • 發佈:2018-12-22
簡介:
介紹單選框控制元件RadioButton。當多個 RadioButton 控制元件出現時,使使用者能夠從一組選項中選擇一個選項。
介紹:
1.屬性
Name | 獲取或設定控制元件的名稱。 |
Text | 獲取或設定與此控制元件顯示的文字。在此控制元件中一般不適用。 |
AutoSize | 獲取或設定一個值,該值指示控制元件是否基於其內容調整大小。 |
TextAlign | 獲取或設定此控制元件上的文字對齊方式。 |
Checked | 獲取或設定一個值,該值指示是否已選中控制元件。若選中了單選框,則為 true;反之,則為 false。 |
Appearance | 獲取或設定一個值,該值用於確定 RadioButton 的外觀。如果 Appearance 值設定為 Normal,則在繪製 RadioButton 控制元件時使用圓形複選框。 若該值設定為 Button,則將 RadioButton 繪製成一個可切換為向上或向下狀態的控制元件。 每種型別都可顯示文字或影象,或同時顯示兩者。 |
TabStop | 獲取或設定一個值,該值指示使用者能否使用 Tab 鍵將焦點放到該控制元件上。 |
Tag | 獲取或設定包含有關控制元件的資料的物件。 |
2.事件
CheckedChanged | 當 Checked 屬性的值更改時發生。 |
3.使用
- 一般更改屬性Name,Text,使用事件CheckedChanged。當超過兩個以上時,可以考慮把不同控制元件繫結相同的事件,在控制元件檢視屬性的CheckedChanged事件輸入相同的繫結函式名。當然也可以分別使用不同的繫結函式名。
- 把要互斥的單選框控制元件放在同一個容器中,常用GroupBox。
如下圖:
4.原理
- CheckedChanged事件和radioButton_CheckedChanged繫結。選擇狀態更改時,會觸發。
this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton_CheckedChanged);
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
}
5.演示
- 獲取選中狀態。通過屬性Checked判斷狀態。修改屬性Tag或者Text來判斷是哪個控制元件被選中。
- 更改顯示樣式。Appearance 屬性設定為 Button。
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
RadioButton rbn = sender as RadioButton;
//第一種
if (rbn.Checked)
{
string tag = rbn.Tag.ToString();
if (tag == "男")
{
//Do something
}
else
{
//Do something
}
MessageBox.Show(tag);
}
////第二中種
//if (rbn.Checked)
//{
// string name = rbn.Text;
// if (name == "男")
// {
// //Do something
// }
// else
// {
// //Do something
// }
// MessageBox.Show(name);
//}
}
如下圖: