我有一个 CheckboxList 似乎可以加载并正确执行所有操作,除了当我进行回发时,它不会Item.Selected
设置属性。我为整个页面禁用了视图状态。
我像这样加载它(Page_Load
每次加载都在里面):
foreach (DataRow service in d.Tables[0].Rows)
{
cblServices.Items.Add(new ListItem((string)service["description"], service["id"].ToString()));
}
我的标记很简单:
<asp:CheckBoxList runat="server" ID="cblServices" Width="300px"></asp:CheckBoxList>
然后,我基本上使用这样的东西(在按钮的_Click服务器端事件中)
foreach(ListItem item in cblServices.Items){
if(item.Selected){
MyLabel.Text+="selected: "+item.Value+item.Text;
}
}
MyLabel 从未添加任何文本。我可以用调试器验证它确实到达了 _Click 的 foreach 循环,但没有选择任何项目。这可能是什么原因?