0

我在一个网页上有两个更新面板。它们都设置为 UpdateMode="Conditional"。它们不是嵌套的。我的问题是,当我希望 UpdatePanelOne 上的控件更新 UpdatePanelTwo 上的控件时,两个控件将永远不会更新。我不想将 UpdateMode 设置为始终。如何让 UpdatePanelTwo 反映 UpdatePanelOne 上发生的更改?

4

1 回答 1

0

好的,我不是 100% 这就是您正在寻找的,但使用触发器可能是答案:

例如

以网络形式:

  <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>

    <div>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" >
            <ContentTemplate>

                <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
            </ContentTemplate>

        </asp:UpdatePanel>
        <br /><br />
        <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">

            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
            </ContentTemplate>
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
            </Triggers>
        </asp:UpdatePanel>
    </div>
    </form>

在代码隐藏中:

protected void Button1_Click(object sender, EventArgs e)
{
    Label1.Text = "YO";
}

在第一个更新面板中单击 Button1 会触发第二个更新面板中 Label1 的 Text 属性的更新。

于 2013-05-10T14:59:52.300 回答