【发布时间】:2010-08-04 21:42:03
【问题描述】:
<ajaxtoolkit:AccordionPane ID="accordianPaneAroundTheCheckbox" runat="server">
<Content>
<asp:UpdatePanel ID="updatePanelAroundTheCheckbox" runat="server" >
<ContentTemplate>
<div>
<asp:CheckBox ID="chkFoo" AutoPostBack="true" runat="server" OnCheckedChanged="DoBar"/>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</Content>
</ajaxtoolkit:AccordionPane>
我们有类似上面的东西。由于页面较大,因此省略了额外的内容。
我在Page_Load 和DoBar 的开头放置了一个断点。我第一次单击复选框时,Page_Load 上的断点被命中,但 DoBar 没有。第二次单击复选框时,两个断点都被命中。
为什么会发生这种情况?我不是动态生成复选框。它的 ClientID 每次都是相同的(没有动态生成或 ID 的容器)。我已经尝试在Page_Load 中重新订阅该活动,但它第一次没有命中,后来两次命中。
更新我已尝试完全删除 UpdatePanel。不仅整个页面回发,这是我不想要的,而且事件仍然没有进入。什么可以阻止/吞下这样的事件调用?在母版页或框架调用的深处或我看不到的地方是否有一些异常?
【问题讨论】:
标签: c# asp.net webforms viewstate