我在asp.net中有一个动态创建的List,代码如下:
HtmlGenericControl li = new HtmlGenericControl("li");
li.ID = "liQuestions" + recordcount.ToString();
li.Attributes.Add("role", "Presentation");
ULRouting.Controls.Add(li);
HtmlGenericControl anchor = new HtmlGenericControl("a");
li.Attributes.Add("myCustomIDAtribute", recordcount.ToString());
anchor.InnerText = "Test " + new HtmlGenericControl("br") + "12345";
li.Controls.Add(anchor);
我试图输入一个HtmlGenericControl,但这并不起作用。如何在测试和12345之间添加br?
答案 0 :(得分:3)
您需要使用InnerHtml
属性
HtmlGenericControl li = new HtmlGenericControl("li");
li.ID = "liQuestions" + recordcount.ToString();
li.Attributes.Add("role", "Presentation");
ULRouting.Controls.Add(li);
HtmlGenericControl anchor = new HtmlGenericControl("a");
li.Attributes.Add("myCustomIDAtribute", recordcount.ToString());
anchor.InnerHtml = "Test <br/> 12345";
li.Controls.Add(anchor);
或者,像这样:
anchor.Controls.Add(new LiteralControl("Test")); //or new Literal("Test");
anchor.Controls.Add(new HtmlGenericControl("br"));
anchor.Controls.Add(new LiteralControl("12345")); //or new Literal("12345");
答案 1 :(得分:1)
虽然我现在无法自己测试,但我相信hazzik's answer中的第一种方法可行,但我认为他的第二种方法不会。众所周知,HtmlGenericControl不支持BR element所属的自闭元素。
以下SO问题有更多细节和另一种可能的解决方案: