在选定的下拉列表中设置的值在modalpopupextender中未显示

时间:2011-08-19 14:02:46

标签: c# asp.net modalpopupextender page-lifecycle

我正在使用包含下拉框的模态弹出窗口。当下拉列表被更改时,我正在尝试检索数据并在模态中分配标签。我观察到在调试器中设置的标签值,但它们没有显示在模态中。

模态/面板代码:

<asp:Panel ID="pnlUpdate" runat="server" CssClass="modalPopup">
     <div>   
          <asp:UpdatePanel runat="server" ID="upSubnetUpdate" UpdateMode="Conditional">
             <ContentTemplate>
                  <asp:Label runat="server" ID="pnlLblSubnet" CssClass="searchLabel">Subnet:</asp:Label>
                  <asp:DropDownList runat="server" ID="ddlSubnet" OnSelectedIndexChanged="ddlSubnet_SelectedIndexChanged" AutoPostBack="true"></asp:DropDownList><br />
             </ContentTemplate>
         </asp:UpdatePanel> 
     </div>
     <div>
         <asp:Label runat="server" ID="lblIPStartUpdate"></asp:Label>
         <asp:Label runat="server" ID="lblIPEndUpdate"></asp:Label>
         <asp:Label runat="server" ID="lblGatewayUpdate"></asp:Label>
         <asp:Label runat="server" ID="lblSubnetMaskUpdate"></asp:Label>
    </div>
</asp:Panel>

下拉代码

protected void ddlSubnet_SelectedIndexChanged(object sender, EventArgs e)
    {
        SubnetInfo si = GetSubnetInfo(ddlSubnet.SelectedItem.Text);
        lblIPStartUpdate.Text = si.IP_Start;
        lblIPEndUpdate.Text = si.IP_End;
        lblGatewayUpdate.Text = si.Gateway;
        lblSubnetMaskUpdate.Text = si.Subnet_Mask;
    }

我不确定这是页面生命周期问题还是模式弹出窗口的限制。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您需要将DropDown和标签放在UpdatePanel中。下拉列表位于UpdatePanel中,但如果它们不在UpdatePanel中,则无法更新标签。