C# 向codebehind中的控件添加控件
我试图在锚点和dd标记中添加一个跨度。出于某种原因:C# 向codebehind中的控件添加控件,c#,asp.net,C#,Asp.net,我试图在锚点和dd标记中添加一个跨度。出于某种原因: protected Control MakeDD() { var dd = new HtmlGenericControl("dd"); var link = new HtmlGenericControl("a"); var span = new HtmlGenericControl("span"); link.Controls.Add(span); dd.Controls.Add(link);
protected Control MakeDD() {
var dd = new HtmlGenericControl("dd");
var link = new HtmlGenericControl("a");
var span = new HtmlGenericControl("span");
link.Controls.Add(span);
dd.Controls.Add(link);
return dd;
}
只产生
<dd><a></a></dd>
而不是
<dd><a><span></span></a></dd>
如何将控件添加到一个控件中,然后将该控件添加到另一个控件中?如果将某个值设置为跨度值,会发生什么情况,然后会显示该值吗
...
var span = new HtmlGenericControl("span");
span.InnerHtml = "test";
link.Controls.Add(span);
...
将面板作为容器放置在页面上,然后执行以下操作: protected void Page_Load(object sender, EventArgs e) { pnlTest.Controls.Add(MakeDD()); } 受保护的无效页面加载(对象发送方、事件参数e) { 添加(MakeDD()); } 在页面上发出以下信息: <div id="MainContent_pnlTest"> <dd><a><span></span></a></dd> </div>
这是asp.net 4Yo dawg,我听说你喜欢控件,所以我们在你的控件中放了一个控件…我将你的代码放到了一个Web表单中,得到了你预期的结果。我相信问题是我试图添加的一个控件实际上是在编写字符串,而不是创建控件。某人的自定义实现。。不管是谁,谢谢你的帮助