Mar*_*rco 9 c# asp.net master-pages
我在ASPX方面有以下代码:
<%@ Page Language="C#" MasterPageFile="~/masterpages/standard.Master" .... %>
<%@ MasterType VirtualPath="~/masterpages/standard.Master" %>
Run Code Online (Sandbox Code Playgroud)
我使用VirtualPath访问我的MasterPage中的属性.到现在为止还挺好.
但是,现在我必须以编程方式更改主页.我知道要更改母版页,我必须在page_init上执行:
Page.MasterPageFile = "~/masterpages/myNewMasterPage.Master";
Run Code Online (Sandbox Code Playgroud)
但我不知道如何更改VirtualPath.
我假设您正在使用 MasterType 因为您需要一些属性(如果您更改为另一个 master,您也需要这些属性),假设您当前正在使用 MasterType Master.MyButton
,请将其移至基类并在@MasterType
声明中使用该类型:
public class MasterBase : MasterPage
{
public Button MyButton;
}
public class standard : MasterBase
{
}
Run Code Online (Sandbox Code Playgroud)
现在在您的页面中,您的 MasterType 声明如下所示:
<%@ MasterType TypeName="MyNameSpace.MasterBase" %>
Run Code Online (Sandbox Code Playgroud)
现在,当您更改虚拟路径时,没关系,您正在访问基础中的属性,这对于两个母版页都是相同的。
归档时间: |
|
查看次数: |
7699 次 |
最近记录: |