bootstrap 按钮样式单选效果_【自学C#】I 书 101 单选按钮
一、簡介
????當需要用戶在多個選項中選擇一項時,可以使用單選按鈕。
????單選按鈕處于被選中狀態時,其左邊圓圈中心有一黑點。
????單選按鈕通常以選項組的形式存在,在由若干單選按鈕組成的選項組中,每次只能選中其中一個。
????當選中一個單選按鈕時,其他單選按鈕將會自動關閉。
????單選按鈕就是RadioButton控件,在工具箱的【公共控件】欄內可以找到它。
二、RadioButton的常用屬性。
????1.Checked(是否選中)
? ? ? ??該屬性指示單選按鈕是否被選中狀態,其值為布爾值。
??????? true時,為選中;false時,為不選中狀態。
????????當多個RadioButton在同一個容器中時,就會自動組成一個選項組,也就是處于一個選中狀態。
????2.Visible屬性
????????該屬性表示控件是否可見。
????3.Enabled屬性
????????為False時,表示不可以,禁用控件。
? ? 如果在一個窗體或容器內需要2組單選按鈕時,則可以把這2組分別放在2個不同的容器內,這樣它們就可以各有一個單選按鈕處于選中狀態了。
????可新創建panel控件,在往里面新建RadioButton控件。
????不過好像都使用GroupBox容器控件!
????4.Appearance屬性樣式
????????該屬性控制RadioButton控件的樣式。
????5.FlatStyle屬性外觀
????????該屬性當用戶鼠標移動到控件上并單擊時,外觀的改變。
??????? 1)Flat:以平面顯示。
??????? 2)Popup:以平面顯示,直到鼠標指針移動到該控件為止。
????????????該控件外觀為三維。
??????? 3)Standard:外觀為三維。
??????? 4)System:外觀是由用戶的操作系統決定。
????????也可以通過代碼改變FlatStyle屬性。
????????radioButton6.FlatStyle =?FlatStyle.Flat;
????????總之,具體會變成什么樣,不妨親自試試。
三、RadioButton的常用事件
????1.Click事件
????????用鼠標左鍵單擊RadioButton時觸發Click事件。
????????如果在一個組里的控件,單擊了沒有選中的控件,該控件就會被選中狀態,其他的控件將處于未選中的狀態。
????2.CheckedChanged事件
??????? Checked屬性值更改事件。
????????當一個單選按鈕控件的Checked屬性值發生改變時,會被觸發。
????注意:
????????當單擊一個未選中的RadioButton時,將會2次觸發這個事件。
????????第一次是在之前被選中的RadioButton變為未選中狀態時觸發。
????????第二次則是未選中狀態變成被選中狀態時觸發。
????????總之就是一個改變了,另一個也會被改變。
????????因為這個特殊性,所以一般都使用Click事件。
四、實例演示
????1.RadioButton的使用
??????? 1)新建一個windows應用程序。
??????? 2)修改窗體屬性,Name:Mainform;Text:RadioButton演示程序。
??????? 3)在窗體上放置2個GroupBox容器控件。
????????????Name屬性分別為:gpbAppearance、gpbRead。
??????????? Text屬性分別為:Appearance屬性和讀取選項組的值。
??????? 4)在gpbAppearance容器控件上放置4個RadioButton控件。
????????????修改Name屬性和Text屬性。如下圖
????????????并把其中的rdoStandard的Checked屬性設置為true。
????????????Checked屬性為默認選中狀態。
????????5)在gpbRead容器控件上放置3個RadioButton控件。
????????????修改Name屬性和Text屬性。如下圖
??????????? Appearance屬性都改成Button。(樣式)
??????????? Size屬性都改成26,26。(單選按鈕尺寸)
??????????? TextAlign屬性改成MiddleCenter。(文字居中)
??????????? Tag屬性分別對應設置成0、1、2。
????????6)在gpbRead容器控件上放置2個Label標簽控件。
?????????????修改Name屬性和Text屬性。如下圖
??????????? AutoSize屬性都設置成false。
??????????? TextAlign屬性設置成MiddleLeft。
大致這樣布局
??????? 7)選中rdoFlat控件,在事件面板里生成Click事件。
????????????(如果直接雙擊控件,生成的并不是Click事件。)
??????? 8)選中rdoPopup控件,在事件面板里生成Click事件。
??????? 9)同時選中rdoStandard和rdoSystem控件,一同生成Click事件。
????????????(框選還是按Ctrl+選都行,也可以直接在Click事件面板的下拉菜單里找。)
??????? 10)同時選中tdoA、rdoB和rdoC控件,并一同生成Click事件。
????????11)完整代碼
運行效果:
分析:
????基本上就是選擇Appearance屬性里的單選按鈕,改變右邊A、B、C三個按鈕的樣式。
????當選中A、B、C其中一個按鈕時,下面會有提示。
22~27行
????使用最基本的改變FlatStyle屬性值的方式。
? ? 分別給右邊A、B、C的按鈕賦值Flat的值,也可以改成其他值類型。
29~40行
????先獲取GroupBox控件里的所有控件,并將其一個個的遍歷出來。
????然后符合單選按鈕的,再調出FlatStyle屬性,并賦值。
????因為遍歷出來的控件都是Object類型,所有需要強制轉換成RadioButton控件類型。
42~56行
????因為是兩個單選按鈕共用一個事件,所有先聲明一個FlatStyle變量。
????然后通過哪個被選中了,就修改哪個按鈕下的樣式。
????最后在把這個樣式逐一賦給要改變的單選按鈕。
以上是幾種改變方式,完全可以使用第42~56行這種直接合并的方式。
而在使用RadioButton編程時,經常需要獲得選中的索引號。
所以可以使用Tag標簽來存放各自的索引,并且通過((Control)sender).Tag獲取Tag的值。
不過因為版本的更新,現在好像具備了專門的索引號功能。TabIndex屬性。
單擊事件的第一個參數,sender代表了觸發這個事件的控件,因為是Object的類型,所以需要進行相應的類型轉換。
如Tag和Text,都是Control類型,所以需要進行轉換。
這里也可以轉換成RadioButton類型,來獲取其中的屬性。
總結
以上是生活随笔為你收集整理的bootstrap 按钮样式单选效果_【自学C#】I 书 101 单选按钮的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 存储器的分配与回收算法实现_垃圾内存回收
- 下一篇: wireshark合并多个文件_TEQC