ASP.NET CheckBoxList DataBinding问题
发布时间:2020-12-16 00:16:41 所属栏目:asp.Net 来源:网络整理
导读:是否有可能DataBind一个ASP.NET CheckBoxList,使得数据中的字符串值成为复选框的标签,并且bool值检查/取消选中该框? 在我的asp.net webform上,我有一个像这样的CheckBoxList: asp:CheckBoxList runat="server" ID="chkListRoles" DataTextField="UserName"
是否有可能DataBind一个ASP.NET CheckBoxList,使得数据中的字符串值成为复选框的标签,并且bool值检查/取消选中该框?
在我的asp.net webform上,我有一个像这样的CheckBoxList: <asp:CheckBoxList runat="server" ID="chkListRoles" DataTextField="UserName" DataValueField="InRole" /> 在后面的代码我有这个代码: var usersInRole = new List<UserInRole> { new UserInRole { UserName = "Frank",InRole = false},new UserInRole{UserName = "Linda",InRole = true},new UserInRole{UserName = "James",}; chkListRoles.DataSource = usersInRole; chkListRoles.DataBind(); 我有点希望在InRole = true时检查复选框.我也试过InRole =“Checked”.结果是一样的.我似乎无法找到DataBind的方法,并自动选中/取消选中复选框. 目前,我通过为DataBound事件中的相应项设置selected = true来解决问题.似乎有一个更清晰的解决方案,超出我的掌握. 谢谢 解决方法
编辑:通过标记没有办法做到这一点. DataValueField不确定复选框项是否已检查.它检索或存储要在回发中使用的值.
DataValueField在CheckBoxLists,RadioButtonLists,ListControl等中很常见.
这是预先选择复选框的唯一方法. chkListRoles.DataSource = usersInRole; chkListRoles.DataBind(); foreach(ListItem item in chkListRoles.Items) item.Selected = usersInRole.Find(u => u.UserName == item.Text).InRole; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-3 – MVC站点地??图提供程序 – 在痕迹路径中维
- asp.net-mvc – 使用asp.net MVC重定向到404页面
- asp.net-mvc-3 – ViewBag在Extension Class中返回null
- ASP.net HttpRuntime.Cache使用的默认序列化是什么
- 将ASP.Net System.Net.Mail设置移动到Web.config
- asp.net – 兼容模式下的IE9无法正确显示CSS样式
- ASP.Net MVC Script Bundle导致404
- asp.net – 什么是Kestrel(vs IIS/Express)
- ASP.NET – 如何引用不在app_code中的类
- asp.net-mvc – 使用ASP.NET Identity 2.0 UserManagerFact