2

如何根据用户设置从自定义控件呈现动态 css?我读 了这篇文章,但它不是我想要的。样式类没有得到所有 css 属性,直接写样式不是好方法。

4

2 回答 2

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);
    }
于 2012-11-06T04:37:11.007 回答
2

如果您不想将样式应用于一个元素,您可以这样做:

 protected override void OnPreRender(EventArgs e)
    {
        ...
        Page.Header.Controls.Add(new LiteralControl("<style type='text/css'> .x { border-style:solid }</style>"));
    }
于 2012-11-07T09:27:25.913 回答