ASP.NET动态创建自定义控件
问题描述:
我创建了用户控件并希望将其添加到页面。我使用下面的代码:ASP.NET动态创建自定义控件
Controls_MultiTextInput cc = new Controls_MultiTextInput();
Controls.Add(cc);
但是控件不会出现在页面上。哪里不对?
答
this.Controls.Add(this.LoadControl("MultiTextInput.ascx"))
是加载控制,因为它需要知道在哪里的ascx文件是正确的方法。
如果你想设置的属性,这样做:
Controls_MultiTextInput cc = (Controls_MultiTextInput) LoadControl("MultiTextInput.ascx");
cc.MyProperty = "abc";
Controls.Add(cc);
答
安东你可以设置属性!
Controls_MultiTextInput cc
= (Controls_MultiTextInpu)Page.LoadControl("MultiTextInput.ascx");
cc.variable = 2;
cc.SetProperties(223,2311);
Controls.Add(cc);
or
PlaceHolder.Controls.Add(cc);
我能够添加使用this.Controls.Add(this.LoadControl( “MultiTextInput.ascx”))控制; 但它似乎是一个坏方法,因为我无法在添加之前设置控件的属性。 – Anton 2010-08-23 09:41:47
当您添加非自定义控件(例如文本框)时它工作吗? – 2010-08-23 09:47:43