【发布时间】:2012-02-17 21:58:44
【问题描述】:
我有一个带有几个复选框的 ListView。但是如果我想知道复选框是否被选中,它总是错误的(即使我选中了它)。
这是我的 ListView 的代码
<asp:ListView ID="lvCompanies" runat="server" DataKeyNames="id" onitemdatabound="lvCompanies_ItemDataBound">
<LayoutTemplate><ul><asp:PlaceHolder runat="server" ID="itemPlaceholder"></asp:PlaceHolder></ul></LayoutTemplate>
<ItemTemplate>
<li>
<asp:CheckBox ID="cbCompany" CssClass="checkbox company-checkbox" runat="server" />
<%# Eval("Name") %>
</li>
</ItemTemplate>
</asp:ListView>
这就是我尝试获取选中复选框的方式
public List<Company> getSelectedItems()
{
foreach (ListViewDataItem dataItem in lvCompanies.Items)
{
bool isChecked = ((CheckBox)dataItem.FindControl("cbCompany")).Checked;
}
}
你知道为什么我的复选框总是 Checked = false 吗?
非常感谢,
文森特
【问题讨论】:
-
您在哪个方法/事件处理程序中调用方法 getSelectedItems ?