Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从它调用(显示)母版页中的模式弹出窗口';孩子们_C#_Asp.net_Ajaxcontroltoolkit_Modalpopupextender - Fatal编程技术网

C# 从它调用(显示)母版页中的模式弹出窗口';孩子们

C# 从它调用(显示)母版页中的模式弹出窗口';孩子们,c#,asp.net,ajaxcontroltoolkit,modalpopupextender,C#,Asp.net,Ajaxcontroltoolkit,Modalpopupextender,我正在尝试创建一个默认的模式框,它必须可以从应用程序的任何部分访问,并且需要在任何页面中随时调用。(必须从代码隐藏处调用) 因此,我想到了在母版页中放置一个Panel+modalPopupExtender,并通过代码隐藏从子页调用它 我该怎么做?或者你们有更好的办法来解决这个问题。因为模式是从后面的代码调用的,所以可以这样实现 向母版页添加方法 public class MyMaster : MasterPage { public void ShowModal(string someP

我正在尝试创建一个默认的模式框,它必须可以从应用程序的任何部分访问,并且需要在任何页面中随时调用。(必须从代码隐藏处调用)

因此,我想到了在母版页中放置一个Panel+modalPopupExtender,并通过代码隐藏从子页调用它


我该怎么做?或者你们有更好的办法来解决这个问题。

因为模式是从后面的代码调用的,所以可以这样实现

向母版页添加方法

public class MyMaster : MasterPage
{
     public void ShowModal(string someParameter)
     {
          // Do your logic here
          // Show the modal
     }
}
然后将一个方法添加到您的页面,或像这样的页面库…

public void ShowModal(string someParameter)
{
     MyMaster masterPage = this.Master as MyMaster;
     masterPage.ShowModal(someParameter);
}

我建议为您的页面使用基类,这样您就不必复制上述方法。

因为模式是从代码后面调用的,所以可以这样实现

向母版页添加方法

public class MyMaster : MasterPage
{
     public void ShowModal(string someParameter)
     {
          // Do your logic here
          // Show the modal
     }
}
然后将一个方法添加到您的页面,或像这样的页面库…

public void ShowModal(string someParameter)
{
     MyMaster masterPage = this.Master as MyMaster;
     masterPage.ShowModal(someParameter);
}

我建议为页面使用基类,这样就不必复制上述方法。

向母版页添加方法。例如:

public void ShowMpSignup4free()
{
    mpSignup4free.Show();
}
然后从代码隐藏页调用此方法,如下所示:

protected void lbSignin_Click(object sender, EventArgs e)
{
    MasterPages_WebMasterPage wm = (MasterPages_WebMasterPage)(this.Master);
    wm.ShowMpSignup4free();
}
这里mpSignup4free是ModelPopupExtender的ID,MasterPages\u WebMasterPage是母版页的名称(WebMasterPage是放置在文件夹母版页中的母版页的名称。这就是母版页的全称为MasterPages\u WebMasterPage的原因)

lbSignin是页面上的链接按钮,其母版页是WebMasterPage,单击事件将显示模型弹出窗口


为了避免回发,请将lbSignin链接按钮放在UpdatePanel…

向母版页添加方法。例如:

public void ShowMpSignup4free()
{
    mpSignup4free.Show();
}
然后从代码隐藏页调用此方法,如下所示:

protected void lbSignin_Click(object sender, EventArgs e)
{
    MasterPages_WebMasterPage wm = (MasterPages_WebMasterPage)(this.Master);
    wm.ShowMpSignup4free();
}
这里mpSignup4free是ModelPopupExtender的ID,MasterPages\u WebMasterPage是母版页的名称(WebMasterPage是放置在文件夹母版页中的母版页的名称。这就是母版页的全称为MasterPages\u WebMasterPage的原因)

lbSignin是页面上的链接按钮,其母版页是WebMasterPage,单击事件将显示模型弹出窗口


为了避免回发,将lbSignin链接按钮放在UpdatePanel中…

这是否与重定向到另一个页面并在对话框处理完毕后返回不同?或者我很困惑,“代码隐藏”是指页面中的一些JavaScript?只是想显示一个模式框,用户可以阅读,然后关闭。(codebhind=.cs文件)这是否应该与重定向到另一个页面并在处理完对话框后返回的行为有所不同?或者我很困惑,“代码隐藏”是指页面中的一些JavaScript?只是想显示一个模式框,用户可以阅读,然后关闭。(Code behind=.cs文件)如果我使用的是ModalPopupXtender,这肯定会起作用,但是如果我想使用ajax之类的工具显示其他面板或div,该怎么办(updatepanels不起作用,因为触发器不在同一页面中)?这是真的。您可以创建一个用户控件,该控件利用共享javascript代码使用AJAX来提取内容并以弹出模式显示它们。如果我使用的是ModalPopupXtender,这肯定会起作用,但是如果我想使用AJAX之类的工具来显示其他面板或div,该怎么办(UpdatePanel不起作用,因为触发器不在同一页面中)是的。您可以创建一个用户控件,该控件利用共享javascript代码使用AJAX来提取内容并以弹出模式显示它们。