Динамически создавать пользовательский веб-элемент управления из простого файла CS (не aspx.cs) в asp.net
Я пишу веб-приложение на asp.net, используя.net 3.5 и 2010;
Я создал пользовательский веб-элемент управления (.ascx) и хочу вставить его в панель, созданную в простом классе cs (не в aspx.cs),
мой класс находится в App_Code, проблема в том, что класс не идентифицирует имя пользовательского элемента управления, поэтому, например, я не могу сделать:
public class MyClass
{
public MyClass() { }
public void foo(MyCtrl i_MyCtrl)
{
//doing somthing
}
}
Я ищу ответ в Интернете, и люди говорят, что это невозможно сделать в.net 2 и 2005/8, но ничего не говорится о.net 3.5 и 2010
дело в том, что вы не можете создать баттен (батттен - это элемент управления), поэтому я думаю, что, возможно, есть шанс создать динамический пользовательский элемент управления в простом файле cs.
пожалуйста помогите
Благодарю.
1 ответ
Метод LoadControl считывает данный ASCX и создает из него экземпляр Control - тогда вы можете свободно добавить его в дерево элементов управления страницы. Это была функция с самого начала в ASP.NET:
Control c = this.LoadControl("myAscx.ascx");
this.myPanel.Controls.Add( c );