C# 以编程方式将web用户控件的对象添加到另一个用户控件中

C# 以编程方式将web用户控件的对象添加到另一个用户控件中,c#,asp.net,.net-3.5,webusercontrol,C#,Asp.net,.net 3.5,Webusercontrol,我有一个web表单,在其中加载web用户控件(a) 单击控件a上的按钮时,它将加载另一个名为infobox 当我将用户控件添加到web用户控件A的控件集合中时,它不会显示 下面是代码:单击控件A的按钮 foreach (Categories category in CategoriesDataList) { InfoBox ib = new InfoBox(); ib.LiteralName = catego

我有一个web表单,在其中加载web用户控件(a)

单击控件a上的按钮时,它将加载另一个名为
infobox

当我将用户控件添加到web用户控件A的控件集合中时,它不会显示

下面是代码:单击控件A的按钮

foreach (Categories category in CategoriesDataList)
            {
                InfoBox ib = new InfoBox();
                ib.LiteralName = category.Category_Name;
                span_tempList.Controls.Add(ib);
                ib = null;           
            }   



span_tempList is a `<span>` tag with `runat=server`
--HTML--



还尝试将控件添加到页面不起作用

如果要将UserControl添加到页面的控件集合,则不应通过构造函数创建UserControl的实例,而应使用

InfoBox ib = (InfoBox)LoadControl("InfoBox.ascx");

另外,为什么要将控件设置为
null
?它将在页面生命周期结束时自动释放。

如果要将用户控件添加到页面的控件集合中,则不应通过构造函数创建用户控件的实例,而应使用

InfoBox ib = (InfoBox)LoadControl("InfoBox.ascx");

另外,为什么要将控件设置为
null
?它将在页面生命周期结束时自动处理。

是否检查了页面构造函数中页面的IsPostBack属性是否为真?是否检查了页面构造函数中页面的IsPostBack属性是否为真?感谢您的帮助。它帮助了我,并且能够通过编程实现负载控制。。谢谢,但是
“InfoBox.ascx.cs”
给了我一个错误,这只是
。ascx
文件路径
加载控制
要求的。谢谢你的帮助。它帮助了我,并且能够通过编程实现负载控制。。谢谢,但是
“InfoBox.ascx.cs”
给了我一个错误,这只是
InfoBox ib = (InfoBox)LoadControl("InfoBox.ascx");