母版页的基本思想很简单 - 您有一个内容块,您想要“注入”母版页中的某个位置。
很容易想到这一点,甚至没有阅读有关masterpages的文档(我承认没有阅读!)。
我想要做的是将'properties'从其子页面传递给母版页。例如,我可能有一个主内容面板,我想在子页面中设置像素填充。可能还有其他简单的“原始类型”,我希望母版页可以呈现它的子代。我想避免尽可能地弄乱样式表 - 或者我最终会得到一些类似命名的项目。
有没有首选方法可以做到这一点?
答案 0 :(得分:2)
在您的母版页中创建一些类型的钩子(属性或方法),允许某些代码以您想要的任何方式操作母版页。然后在各个页面上执行以下操作:
YourMasterPageType masterPage = (YourMasterPageType)Page.Master;
masterPage.YourHook();
无论你做什么,都不要反过来做事(在母版页中创建特殊情况,搜索页面以获得一些神奇的价值)。你想提供一个接口来操作母版页,否则你最终会得到非常混乱的代码。
答案 1 :(得分:1)
是的,但反过来说。
如果设置内容页面的MasterPageType属性,则可以使用Master.PropertyName语法访问母版页的所有公共属性。
因此,您的子页面可以获取并设置母版页的属性值。