[英]How can I change the background of a masterpage from the code behind of a content page?
我特别想要从使用该母版页的内容页面的代码(C#)中将background-color
的样式添加到母版页的<body>
标记中。
我有不同的内容页面需要使主页具有不同的颜色,具体取决于加载的内容页面,以便母版页与内容页面的主题匹配。
我有一个解决方案如下:
我正在寻找更像的东西:
Master.Attributes.Add("style", "background-color: 2e6095");
内容页面的页面加载功能。 但我不能让上述工作线上班。 我只需要更改页面的<body>
标签的background-color
。
我会针对特定情况做的是:
一世。 将主体定义为服务器端控件
<body runat="server" id="masterpageBody">
II。 在您的内容aspx页面中,使用寄存器注册MasterPage:
<% MasterPageFile="..." %>
III。 在内容页面中,您现在可以简单地使用
Master.FindControl("masterpageBody")
并可以访问控件。 现在,您可以更改您喜欢的任何属性/样式!
这就是我想出的:
在页面加载功能中:
HtmlGenericControl body = (HtmlGenericControl)Master.FindControl("default_body");
body.Style.Add(HtmlTextWriterStyle.BackgroundColor, "#2E6095");
哪里
default_body =正文标记的id。
我相信你在谈论内容管理系统。 我过去对这种情况的处理方式是:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.