使用面板/模式弹出窗口从列表框中填充标签

时间:2013-05-29 10:49:07

标签: c# asp.net ajax modalpopupextender

我创建了一个从db填充的列表框。使用模式弹出窗口和面板时,单击选择用户按钮时会显示此列表框。当从此列表中选择特定用户并单击添加用户按钮时,我想使用特定用户名和userId填充标签。我似乎无法填充标签。它适用于我不使用模态弹出窗口。有任何想法吗??? 我的代码:

<asp:Label ID="UserId" runat="server"></asp:Label>
            <asp:Label ID="UserName" runat="server" Font-Bold="true" ForeColor="#97b23c" Font-Size="14px"></asp:Label>               
                <br />                
                <asp:Button ID="SelectUserBtn" runat="server" Text="Select User" />
                 </asp:Panel>
            </td>
            <td>

                <asp:Panel ID="Pnl" runat="server">
                <asp:ScriptManager ID="ScriptManager1" runat="server">
                </asp:ScriptManager>
                <h4>List Of Available Users</h4>
                    <asp:ListBox ID="SourceList" runat="server" DataSourceID="SqlDataSource1" 
                        DataTextField="FullName" DataValueField="UserId" Height="160" Width="200"></asp:ListBox><br />

                    <asp:Button ID="OKBtn" runat="server" Text="Add User" OnClick="OkBtn_Click" />
                    <asp:Button ID="CancelBtn" runat="server" Text="Cancel" /><br />

                    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                        ConnectionString="<%$ ConnectionStrings:dmsConStr %>" 
                        SelectCommand="SELECT [UserId], [FullName] FROM [UserProfiles]">
                    </asp:SqlDataSource>
                </asp:Panel>  
                  <asp:ModalPopupExtender ID="MPEUserList" runat="server" TargetControlID="SelectUserBtn" PopupControlID="Pnl" OkControlID="OKBtn" BackgroundCssClass="ModalBackground" DropShadow="true" CancelControlID="CancelBtn">
                  </asp:ModalPopupExtender> 

我的代码背后:

protected void OkBtn_Click(object sender, EventArgs e)
    {
        UserId.Text = SourceList.SelectedItem.Value;
        UserName.Text = SourceList.SelectedItem.Text;
    }

1 个答案:

答案 0 :(得分:1)

实际上,ModalPopupExtender阻止了表单回发。只是不要包含OkControlID属性,它应该运行良好。

<asp:ModalPopupExtender runat="server"
    ID="MPEUserList" 
    TargetControlID="SelectUserBtn" 
    PopupControlID="Pnl" 
    BackgroundCssClass="ModalBackground" 
    DropShadow="true" 
    CancelControlID="CancelBtn">
</asp:ModalPopupExtender>