如何根据用户设置从自定义控件渲染动态css?我读过this文章,但这不是我想要的.Style类没有得到所有的css属性,直接写样式也不是很好的方法。
答案 0 :(得分:3)
如果您的样式基于每个用户进行更改,并且您希望完全控制渲染的内容,那么自己编写样式是一种非常好的方法。
这是你可以做到的:
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
{
var styleStr = "{color:red}";
writer.AddAttribute(HtmlTextWriterAttribute.Name, "style");
writer.AddAttribute(HtmlTextWriterAttribute.Value, styleStr);
base.AddAttributesToRender(writer);
}
答案 1 :(得分:2)
如果您想将样式应用于一个元素,可以执行以下操作:
protected override void OnPreRender(EventArgs e)
{
...
Page.Header.Controls.Add(new LiteralControl("<style type='text/css'> .x { border-style:solid }</style>"));
}