2

目前我们有一个包含如下面板的 UpdatePanel:

<asp:UpdatePanel ID="updatepanel" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Panel ID="panel" runat="server">
            </asp:Panel>
        </ContentTemplate>
    </asp:UpdatePanel>

然后,我们使用 LoadControl() 将自定义控件动态加载到面板中。更复杂的是,自定义控件包含自己的 UpdatePanel。

我目前面临的问题是 - 如何在不刷新外部 UpdatePanel 的情况下更新内部 UpdatePanel?两者的 UpdateMode 都设置为 Conditional。非常感谢您的帮助!

4

1 回答 1

0

您是否尝试过设置ChildrenAsTriggers=false父更新面板?

http://www.asp.net/ajax/tutorials/understanding-asp-net-ajax-updatepanel-triggers

通过将 ChildrenAsTriggers 属性设置为 false,也可以禁用自动包含子触发器(以便创建回发的子控件不会自动触发部分呈现)。这允许您在分配哪些特定控件可以调用页面呈现时具有最大的灵活性,并且建议您这样做,以便开发人员可以选择响应事件,而不是处理可能出现的任何事件。

注意,当 UpdatePanel 控件嵌套时,当 UpdateMode 设置为 Conditional 时,如果子 UpdatePanel 被触发,而父控件没有被触发,那么只有子 UpdatePanel 会刷新。但是,如果父 UpdatePanel 被刷新,那么子 UpdatePanel 也将被刷新。

于 2011-02-17T15:52:26.463 回答