绑定 DropDownList、CheckBoxList 代码很类似。
DropDownList
<asp:DropDownList ID="_companyId" runat="server" DataSourceID="_companiesDataSource" DataTextField="CompanyName" DataValueField="CompanyId" SelectedValue='<%# Bind("CompanyId") %>'></asp:DropDownList>
CheckBoxList
<asp:CheckBoxList ID="_categoryId" runat="server" DataSourceID="_categoriesDataSource" DataTextField="CategoryName" DataValueField="CategoryId" SelectedValue='<%# Bind("CategoryId") %>' RepeatDirection="Horizontal" RepeatColumns="4"></asp:CheckBoxList>
说明
DataTextField 是文字字段名称,DataValueField 是值字段名称,SelectedValue 是选中值,输入 SelectedValue 时不会给予智能提示,但没关系,直接写,不会报错。
CheckBoxList 是多选呀!
其实上面对 CheckBoxList 的应用不对,为什么呢?因为 CheckBoxList 是多选,而使用 SelectedValue 只能设置或读取第一个选择项。
应该是循环 CheckBoxList 的每一个 Item,然后对 Selected 进行判断或操作。
微软原话:若要确定 CheckBoxList 控件中的选定项,请循环访问 Items 集合并测试该集合中每一项的 Selected 属性。
相关阅读