我想从子页面访问母版页代码文件中的公共类,但无法使其工作。我尝试使用与访问公共int相同的方法,如下所示,但子页面不能识别任何类项目。asp.net - 从子页面访问母版页中的公共类
MasterPage.cs
private int _Section;
public int Section
{
get{return _Section;}
set{_Section = value;}
}
public class HeaderPanel
{
private bool _Visible = true;
public bool Visible
{
get { return _Visible; }
set { _Visible = value; }
}
private string _Theme;
public string Theme
{
get { return _Theme; }
set { _Theme = value; }
}
public HeaderPanel(bool Visible, string Theme)
{
this.Visible = Visible;
this.Theme = Theme;
}
}
Default.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
Master.Section = 1; // This works
Master.HeaderPanel.Visible = true; // This doesn't work
Master.HeaderPanel.Theme = "Dark"; // This doesn't work
}
该错误消息我得到的是:
'HeaderPanel':无法通过表达式引用类型
看起来你试图访问'HeaderPanel'上的属性,就好像它们是'static'一样。你忘了让它们变成“静态”吗?或者忘记在'MasterPage'中创建一个类的实例? – David