我有一個CheckBoxList在我的頁面,DataTextField和DataValueField屬性設置,有沒有一個屬性,我可以用它來指定一個屬性,指示是否應該檢查?如何在aspx標記中設置CheckBoxList項的checked屬性?
我希望只是設置數據源,而不必有任何代碼背後設置選中的屬性。可能?
我有一個CheckBoxList在我的頁面,DataTextField和DataValueField屬性設置,有沒有一個屬性,我可以用它來指定一個屬性,指示是否應該檢查?如何在aspx標記中設置CheckBoxList項的checked屬性?
我希望只是設置數據源,而不必有任何代碼背後設置選中的屬性。可能?
沒有因爲控制使用的,如其他控件相同的結合這是不可能的ListBox,DropDownList的,單選按鈕列表,等等
按照MSDN:
要在列表中 設置多重選擇通過編程控制循環通過 控件的Items集合並將 設置爲每個 單個項目的Selected屬性。
您可以實現CheckListBox的OnDataBinding,然後爲每個綁定的項目執行查找,但它可能更容易在一個位置完成所有操作。
鎖定這個例子:
string[] strUserRoles = Roles.GetRolesForUser("Ali");
foreach (var item in Roles.GetAllRoles())
{
chkRoleList.Items.Add(new ListItem()
{
Text = item,
Value = item,
Selected = strUserRoles.Contains(item)
});
}
注:當你綁定CheckListBox,你必須設置每個項目的文本和價值。