0

我正在使用一个非常简单的 HtmlGenericControl 代码,它只是在我后面的代码中动态添加 CSS,它给我的对象引用没有设置为一个对象的实例,你清楚地看到它不是 null

HtmlGenericControl style = new HtmlGenericControl();
     style.TagName = "style";
     style.Attributes.Add("type", "text/css");
     style.InnerHtml = "header{"+ imagePath +";}";
     Page.Header.Controls.Add(style);
4

1 回答 1

0

它在哪一行抛出异常?哪个对象是违规对象?在您的代码中添加断点并告知我们。会不会是 imagePath 设置不正确?

更新:

我刚刚创建了一个全新的 C# WebForms 项目,并将以下内容添加到 Default.aspx.cs 的 Page_Load 方法中,然后检查了源代码,它完全符合您的预期:

var imagePath = "contentHere";
HtmlGenericControl style = new HtmlGenericControl();
style.TagName = "style";
style.Attributes.Add("type", "text/css");
style.InnerHtml = "header{" + imagePath + ";}";
Page.Header.Controls.Add(style);

这被添加到我的 HTML 页面的 head 标记的末尾:

<style type="text/css">header{contentHere;}</style>

为了确认,我在页面上有以下 using 语句:

using System;
using System.Web.UI;
using System.Web.UI.HtmlControls;
于 2014-03-11T13:12:40.957 回答