我有一个带有几个复选框的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吗?
非常感谢,
文森特
答案 0 :(得分:4)
检查(!Page.IsPostBack)
中是否有lvCompanies