CheckBox 和 CheckBoxList Web 伺服器控制項概觀
更新:2007 年 11 月
CheckBox 控制項與 CheckBoxList 控制項為使用者提供指定 yes/no (true/false) 選項的方式。
這個主題包含:
功能
背景
程式碼範例
類別參考
功能
您可以使用 CheckBox 控制項與 CheckBoxList 控制項來:
在選取核取方塊時使得網頁回傳。
在使用者選取核取方塊時擷取使用者互動。
繫結每個核取方塊到資料庫中的資料。
回到頁首
背景
您可以使用兩種類型的 Web 伺服器控制項,將核取方塊加入至 ASP.NET Web 網頁:個別的 CheckBox 控制項或 CheckBoxList 控制項。兩個控制項都為使用者提供指定 yes/no (true/false) 選項的方式。
您可以將個別的 CheckBox 控制項加入至網頁,然後單獨使用這些控制項。此外,您可以使用 CheckBoxList 控制項,它是單一控制項,可做為核取方塊清單項目集合的父控制項。它是衍生自基底 ListControl 類別,因此運作方式很像 ListBox、DropDownList、RadioButtonList 和 BulletedList Web 伺服器控制項。許多可搭配 CheckBoxList 控制項使用的程序,都相同於使用其他清單伺服器控制項的程序。
兩種類型的控制項都有其優點。相較於使用 CheckBoxList 控制項,使用個別的 CheckBox 控制項,更能夠掌控網頁中核取方塊的配置。例如,您可以在每個核取方塊之間包含無核取方塊文字。您也可以控制個別核取方塊的字型和色彩。
如果要使用資料來源中的資料建立一系列核取方塊,則 CheckBoxList 控制項會是更好的選擇(您可以將個別 CheckBox 控制項繫結至資料)。
![]() |
---|
您也可以使用 HtmlInputCheckBox 控制項將核取方塊加入至 ASP.NET Web 網頁。如需詳細資訊,請參閱HtmlInputCheckBox 伺服器控制項宣告式語法。 |
CheckBox 和 CheckBoxList 事件
個別的 CheckBox 控制項和 CheckBoxList 控制項之間的事件運作有些不同。
CheckBox 控制項事件
當使用者按一下個別的 CheckBox 控制項時,會引發 CheckedChanged 事件。根據預設,此事件不會將頁面張貼至伺服器。不過,您可以將 AutoPostBack 屬性設定為 true,強迫控制項執行立即回傳作業。如需詳細資訊,請參閱 HOW TO:回應 CheckBox Web 伺服器控制項中的使用者選取。
![]() |
---|
瀏覽器必須支援 ECMAScript (JScript 或 JavaScript),而且使用者的瀏覽器必須啟用指令碼功能,才能使用自動回傳功能。 |
您可能不需要為 CheckedChanged 事件建立事件處理常式。您可以在以網頁執行的任何程式碼中測試選取了哪個核取方塊。通常,只有在需要知道核取方塊遭到變更,而不是只讀取核取方塊的值時,才會建立 CheckedChanged 事件的處理常式。如需詳細資訊,請參閱 HOW TO:設定和取得 RadioButton Web 伺服器控制項中的選取。
CheckBoxList 控制項事件
當使用者選取清單中的任何核取方塊時,CheckBoxList 控制項會引發 SelectedIndexChanged 事件。根據預設,此事件不會將頁面張貼至伺服器。不過,您可以將 AutoPostBack 屬性設定為 true,強迫控制項執行立即回傳作業。
![]() |
---|
瀏覽器必須支援 ECMAScript (JScript 或 JavaScript),而且使用者的瀏覽器必須啟用指令碼功能,才能使用自動回傳功能。 |
藉著使用個別的 CheckBox 控制項,在使用某些其他方法來張貼網頁之後,通常可測試 CheckBoxList 控制項的狀態。如需詳細資訊,請參閱 HOW TO:判斷 List Web 伺服器控制項中的選取。
CheckBox 控制項 HTML 屬性
當 CheckBox 控制項呈現至瀏覽器時,它會透過兩部分完成這個步驟:表示核取方塊的 input 項目,以及表示核取方塊標題的不同 label 項目。這兩個項目的組合包裝在 span 項目中。
當您將樣式或屬性設定套用至 CheckBox 控制項時,這些設定就會套用至外部寬度項目。例如,如果您設定控制項的 BackColor 屬性,設定就會套用至 span 項目。因此,它會同時影響內部 input 與 label 屬性。
有些時候,您可能想要在核取方塊和標籤上套用不同的設定。CheckBox 控制項支援您可以在執行階段設定的兩個屬性。InputAttributes 屬性 (Poperty) 加入 HTML 屬性 (Attribute) 到 input 項目,而 LabelAttributes 屬性可讓您加入 HTML 屬性到 label 項目。您設定的屬性會傳送至瀏覽器。下列範例說明如何設定 input 項目的屬性,以便當使用者將滑鼠指標移到核取方塊時,變更核取方塊的色彩 (而非標籤色彩)。
[Visual Basic]
CheckBox1.InputAttributes.Add("onmouseover", _
"this.style.backgroundColor = 'red'")
CheckBox1.InputAttributes.Add("onmouseout", _
"this.style.backgroundColor = 'white'")
CheckBox1.InputAttributes.Add("onmouseover",
"this.style.backgroundColor = 'red'");
CheckBox1.InputAttributes.Add("onmouseout",
"this.style.backgroundColor = 'white'");
將資料繫結至控制項
您可以將個別的 CheckBox 控制項繫結至資料來源,而且您可以將 CheckBox 控制項的任何屬性繫結至資料來源的任何欄位。例如,您通常可以根據資料庫的資訊設定控制項的 Checked 屬性。
您也可以將 CheckBoxList 控制項繫結到資料來源。在這種狀況下,每個核取方塊代表資料來源中一筆不同的記錄。
回到頁首
程式碼範例
HOW TO:將 CheckBox Web 伺服器控制項加入至 Web Form 網頁 (Visual Studio)
HOW TO:將 CheckBoxList Web 伺服器控制項加入至 Web Form 網頁 (Visual Studio)
HOW TO:設定 CheckBoxList Web 伺服器控制項中的配置
HOW TO:以程式設計方式取得和設定 CheckBox Web 伺服器控制項值
HOW TO:回應 CheckBox Web 伺服器控制項中的使用者選取
HOW TO:將項目加入至 List Web 伺服器控制項 (Visual Studio)
HOW TO:從資料來源填入 List Web 伺服器控制項 (Visual Studio)
回到頁首
類別參考
下表列出 CheckBox 與 CheckBoxList 控制項的相關類別。
成員 |
描述 |
---|---|
CheckBox 控制項的主要類別。 |
|
CheckBoxList 控制項的主要類別。 |
|
表示 CheckBoxList 控制項中每個項目的類別。 |
|
對應至 CheckBoxList 控制項之個別清單項目的項目集合。 |
回到頁首
請參閱
工作
HOW TO:設定清單 Web 伺服器控制項中的選取 (Visual Studio)