我正在使用ASP.NET(Visual C#)在SharePoint可视Web部件中创建自定义视图,并具有CheckBoxList和一个按钮。CheckBoxList被清除按钮单击
标记的列表&按钮:
<td>
<asp:checkboxlist ID="cblYearLst" runat="server" EnableViewState="true" />
</td>
<td>
<asp:Button ID="btnRefineSearch" Text="Refine Search" runat="server" />
</td>
我将项目添加到CheckBoxList的上预渲染:
if (!IsPostBack)
{
if (LstYears != null)
{
for (int i = 0; i < LstYears.Count(); i++)
{
cblYearLst.Items.Add(new ListItem(LstYears[i], LstYears[i]));
}
}
}
我呼吁按钮的事件处理程序上的Page_Load:
btnRefineSearch.Click += new EventHandler(this.btnRefineSearch_Click);
按钮之后,所有CheckBox列表项都不会保持选中状态点击。我可以检索选定的值,但不会显示为选定的值。当我在预渲染事件中为按钮添加Click事件处理程序时,数据会正确显示,但是我的Click事件不能再检索选定的值。
关于什么可能会导致此行为的任何想法?
我认为你在周期中太晚加入物品。将它们添加到Init上的PreInit上:http://stackoverflow.com/questions/2724771/checkboxlist-not-setting-selected-with-viewstate-disabled – jmaglio 2012-03-06 14:30:33
@jfmags我已经尝试了您提供的建议,但列表不再显示。 – anpatel 2012-03-06 14:34:08
你在哪里设置LstYears? – jmaglio 2012-03-06 14:42:44