如何从单独的类文件访问MasterPage中的Control(div)

时间:2015-07-27 01:09:49

标签: c# asp.net class webforms master-pages

我有MP.Master,default.aspx, MyClass.cs

MP.Master中有 div ,属性为“runat = server”

在default.aspx.cs中,我调用 MyClass.cs 文件中的 MyMethod()

我无法访问 div ,无法在 MyMethod()中使用。如何从 MyClass.cs 中访问它?

1 个答案:

答案 0 :(得分:0)

我测试了我的评论并确认它有效。这是一个快速的样本。它将div的innerHTML文本更改为“test”。

划分你的母版页(MP.Master):

<div runat="server" id="myDiv"></div>

母版页后面代码中的属性(MP.Master.cs):

public HtmlGenericControl TheDiv {
    get { return myDiv; }
}

aspx页面顶部的MasterType指令:

<%@ MasterType virtualpath="~/MP.Master" %>

该页面后面的代码(你可以点击按钮,页面加载等):

TestClass test = new TestClass();
test.MyMethod(Master.TheDiv);

TestClass(TestClass就像你的MyClass):

public class TestClass
{
    public void MyMethod(HtmlGenericControl div)
    {
        div.InnerHtml = "Test";
    }
}