Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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_Master Pages - Fatal编程技术网

C# 如何从内容页在母版页中使用方法

C# 如何从内容页在母版页中使用方法,c#,asp.net,master-pages,C#,Asp.net,Master Pages,我正在用C#编写一个ASP.NET 4应用程序。我有一个母版页,其中我有以下方法: public void DisplayMessage(string input) { Label myMessageDisplayer = (Label)FindControl("uxMessageDisplayer"); myMessageDisplayer.Text = input; } 我可以从内容页调用此方法吗? 目前,我在内容页中使用以下代码: Master.DisplayMessage(

我正在用C#编写一个ASP.NET 4应用程序。我有一个母版页,其中我有以下方法:

public void DisplayMessage(string input)
{
   Label myMessageDisplayer = (Label)FindControl("uxMessageDisplayer");
   myMessageDisplayer.Text = input;
}
我可以从内容页调用此方法吗?
目前,我在内容页中使用以下代码:

Master.DisplayMessage("Item has been inserted.");
我收到这个错误:

“System.Web.UI.MasterPage”不包含“DisplayMessage”的定义,并且找不到接受“System.Web.UI.MasterPage”类型的第一个参数的扩展方法“DisplayMessage”(是否缺少using指令或程序集引用?)


任何帮助都将不胜感激

您需要将
母版转换为实际母版页类型

// MyMasterPage is the type of your masterpage
((MyMasterPage)Master).DisplayMessage("Item has been inserted.");
您还可以在内容页顶部添加一个图标,以实现相同的效果:

<%@ MasterType VirtualPath="~/MyMasterPage.master" %>

您可以使用casting来获取母版页类型,如其他人所示,也可以将该指令添加到页面标记中(在顶部,标准的
指令为):

MasterType
指令可从.NET 2向上获得。

我制作/尝试了以下内容:

我的控件(MenuEsquerdo.ascx)

和我的代码隐藏(MenuEsquerdo.ascx.cs)


知道如何修复此问题吗:'System.Web.UI.UserControl'不包含“母版”的定义?

您好,我可以在内容页或母版页中插入吗?感谢放在内容页中的内容。@GlbboK-将其添加到内容页中。然后您可以只使用
Master.DisplayMessage(“…”)我尝试Graham,但再次出现错误错误错误1命名空间“WebProject.Web.Cms.AdminCms”中不存在类型或命名空间名称“MasterPages”(是否缺少程序集引用?)。。。我做错了什么???我正在使用以下代码:您使用的是哪个VS版本?“MasterType指令可从.NET 2向上获得。”母版页也是如此。:-)
Master.DisplayMessage('Item has been inserted.');
<%@ MasterType TypeName="YourNamespace.YourMasterPageType" %>
Master.DisplayMessage("Item has been inserted.");
<%--<%@ MasterType VirtualPath="~/Site.Master" %>--%>
<%--<%@  MasterPageFile="~/Site.Master" %>--%>
<%--<%@ MasterType TypeName="Delivery.SiteMaster" %>--%>
<%--<%@ MasterType VirtualPath="~/Site.Master" %>--%>
<%@ MasterType TypeName="Delivery.SiteMaster" %>
public new Delivery.SiteMaster Master {
            get {
                return ((Delivery.SiteMaster)(base.Master)); // 'System.Web.UI.UserControl' does not contain a definition for 'Master'
            }
        }
RepeaterListaMenuEsquerdoCtr.DataSource = this.Master.ClassMercadorias.Take(20);
RepeaterListaMenuEsquerdoCtr.DataBind();