modalpopupextender asp.net usercontrol页面
问题描述:
我有一个usercontrol作为页面上的标题。用户控件有注册按钮,它打开一个modalpopupextender。注册链接上的弹出式开放代码如下:modalpopupextender asp.net usercontrol页面
protected void lnkSignUp_Click(object sender, EventArgs e)
{
mp1.Show();
}
现在我能够在我的页面中成功使用此用户控件。问题是在我的页面中,除了标题之外还有其他链接,它们将提供注册功能。现在我想使用usercontrol的注册弹出框,通过点击页面注册链接来打开。我应该怎么做页面链接点击。我试图从网页下面的代码,但myMpeModal返回null:
ucHeaderJobseeker uc1 = new ucHeaderJobseeker();
var myMpeModal = (AjaxControlToolkit.ModalPopupExtender)uc1.FindControl("mpeModal");
myMpeModal.Show();
答
试着做这样的事情:
您的前端(.aspx页面中):
<uc1:WebUserControl runat="server" ID="myUserControl" />
你的用户控件应该看像这样:
<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。
使用上面的代码,只要你想在你的页面显示弹出窗口。
编辑了这个问题myMpeModal返回null –
不需要再次初始化对象。使用aspx页面中列出的相同控件。 –
myUserControl没有FindControl方法。它给编译错误。 –