1

我需要在特定页面的部分添加一个 HTML 样式容器,如下所示:

<style>
#mycontrol
{
    color:#ff0000;
}
</style>

虽然有很多方法可以做到这一点,但我正在考虑从 System.Web.UI.HtmlControls 命名空间实例化一个 HtmlControl 并简单地将其呈现在页面上。但是我只发现 HtmlGenericControl 是最接近的候选 - 是否有更合适的控件我可以使用或者我必须使用另一种方法?

4

3 回答 3

4

尝试类似的东西

HtmlGenericControl style = new HtmlGenericControl();
style.TagName = "style";
style.Attributes.Add("type", "text/css");
style.InnerHtml = "body{background-color:#000000;}";
Page.Header.Controls.Add(style); 

高温高压

伊沃·斯托伊科夫

于 2011-03-19T15:08:17.343 回答
1

你可以试试这个:

    var myStyle =
        new Style { ForeColor = System.Drawing.Color.FromArgb(255, 0, 0) };

    Page.Header.StyleSheet.CreateStyleRule(myStyle, this, ".myStyle");
于 2011-03-19T15:11:43.633 回答
0

您可以使用 HtmlGenericControl - 如果您愿意,也可以使用 Literal。

更好的方法可能是使用来自http://msdn.microsoft.com/en-us/library/system.web.ui.page.header.aspx的类似代码将其插入您的 HTML Header

  protected void Page_Load(object sender, System.EventArgs e)
  {

      // Create a Style object for the body of the page.
      Style bodyStyle = new Style();

      bodyStyle.ForeColor = System.Drawing.Color.Blue;
      bodyStyle.BackColor = System.Drawing.Color.LightGray;

      // Add the style rule named bodyStyle to the header 
      // of the current page. The rule is for the body HTML element.
      Page.Header.StyleSheet.CreateStyleRule(bodyStyle, null, "body");

      // Add the page title to the header element.
      Page.Header.Title = "HtmlHead Example"; 

  }
于 2011-03-19T15:12:08.477 回答