在动态创建的控件中的文本之间添加BR
本文关键字:之间 添加 BR 文本 控件 动态 创建 | 更新日期: 2023-09-27 17:59:04
我在asp.net中有一个动态创建的列表,代码如下:
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,但没有用。如何在Test和12345之间添加br?
您需要使用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");
虽然我现在无法自己测试,但我相信hazzik答案中的第一种方法会奏效,但我认为他的第二种方法不会。已知HtmlGenericControl不支持自闭元件,BR元件就是自闭元件。
以下SO问题有更多细节和另一种可能的解决方案:
HtmlGenericControl("br")渲染两次
服务器控制行为异常
添加<br/>控件之间动态切换asp.net