我有一个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,你必须设置每个项目的文本和价值。