modalpopupextender asp.net usercontrol页面

时间:2017-05-29 07:07:04

标签: c# asp.net user-controls

我有一个usercontrol作为页面上的标题。 usercontrol有一个注册按钮,可以打开一个modalpopupextender。注册链接上的弹出式打开代码如下:

protected void lnkSignUp_Click(object sender, EventArgs e)
{
    mp1.Show();
}

现在我可以在我的页面中成功使用此usercontrol。问题是在我的页面中除了标题之外还有其他链接,它们将提供注册功能。现在,我想通过单击页面注册链接来使用相同的usercontrol注册弹出窗口。我应该在页面链接上点击什么。我在页面上尝试了以下代码,但myMpeModal返回null:

ucHeaderJobseeker uc1 = new ucHeaderJobseeker();
        var myMpeModal = (AjaxControlToolkit.ModalPopupExtender)uc1.FindControl("mpeModal");
        myMpeModal.Show();

1 个答案:

答案 0 :(得分:0)

尝试做这样的事情:

你的前端(.aspx页面):

<uc1:WebUserControl runat="server" ID="myUserControl" />  

您的UserControl应如下所示:

<ajax:ModalPopupExtender ID="mpeModal" runat="server" BackgroundCssClass="modalBackground"
        PopupControlID="pnlShowMe" TargetControlID="btnClickMe" CancelControlID="btnClose">
    </ajax:ModalPopupExtender>
    <asp:Button ID="btnClickMe" runat="server" Text="Click Me" OnClick="btnClickMe_Click" />
    <asp:Panel ID="pnlShowMe" runat="server" CssClass="ModalPanel">
    </asp:Panel>

你的代码(.aspx.cs):

var myMpeModal = (AjaxControlToolkit.ModalPopupExtender)myUserControl.FindControl("mpeModal");
        myMpeModal.Show();

在上面的代码中,“myUserControl”是您的用户控件,“mpeModal”是您的ModalPopupExtender ID。

使用上面的代码在页面中显示弹出窗口。