Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.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中访问类文件中的母版页#_C#_Asp.net_Class_Master Pages - Fatal编程技术网

C# 在C中访问类文件中的母版页#

C# 在C中访问类文件中的母版页#,c#,asp.net,class,master-pages,C#,Asp.net,Class,Master Pages,我已在母版页中获得以下内容: <ul> <li id="link1" runat="server"><a href="mytestfile.aspx">Test Files</a></li> <li id="link2" runat="server"><a href="mylistitemtest.aspx">List Item Test</a></li> <

我已在母版页中获得以下内容:

<ul>
    <li id="link1" runat="server"><a href="mytestfile.aspx">Test Files</a></li>
    <li id="link2" runat="server"><a href="mylistitemtest.aspx">List Item Test</a></li>
    <li id="link3" runat="server"><a href="Mytest2.aspx">Some Test</a></li>    
</ul> 
public static void disablecontrol()
{
    Master.FindControl("link1").Visible = false;
    Master.FindControl("Link3").Visible = false;
}
我在使用“主”字时遇到以下错误


非静态字段、方法、属性“System.Web.UI.MasterPage.master.get”需要对象引用

因为此方法是静态的,所以它无权访问。在页面的实例方法中运行此代码。

尝试以下操作:

var pageHandler = HttpContext.Current.CurrentHandler;
if (pageHandler  is  System.Web.UI.Page)
{
  ((System.Web.UI.Page)pageHandler).Master.FindControl("...").Visible=false;
}

aspx
文件中添加以下指令:

<%@ MasterType TypeName="YorNamespace.YourMasterClass" %>
aspx.cs
文件中,您可以简单地执行以下操作:

this.Master.disablecontrol();
编辑:它将更改
aspx.designer
文件,在
this.Master
属性中为您进行转换,如下所示:

/// <summary>
/// Master property.
/// </summary>
/// <remarks>
/// Auto-generated property.
/// </remarks>
public new YorNamespace.YourMasterClass Master {
    get {
        return ((YorNamespace.YourMasterClass)(base.Master));
    }
}
//
///主财产。
/// 
/// 
///自动生成的属性。
/// 
public new.YourMasterClass Master{
得到{
返回((YorNamespace.YourMasterClass)(base.Master));
}
}

更多关于。

工作很好,非常感谢。
/// <summary>
/// Master property.
/// </summary>
/// <remarks>
/// Auto-generated property.
/// </remarks>
public new YorNamespace.YourMasterClass Master {
    get {
        return ((YorNamespace.YourMasterClass)(base.Master));
    }
}