Динамически загружать пользовательский элемент управления в C# и назначать открытые свойства этого элемента управления
Я хочу динамически загружать пользовательские элементы управления на своей странице. Я могу загрузить элемент управления динамически с помощью следующего кода:
UserControl ctrl =(UserControl) Page.LoadControl(ControlPath);
dvUserControls.Controls.Clear();
dvUserControls.Controls.Add(ctrl);
dvUserControls
это просто div с runat = "server"
Моя проблема в том, что я должен назначить значения для открытых свойств элементов управления. Я не могу зарегистрировать свой элемент управления на странице aspx.
Пожалуйста, порекомендуйте.
Спасибо Рохит
2 ответа
Если тип пользовательского контроля недоступен (вы говорите, что это ваш случай), вы можете (и должны) использовать отражение
Вот как это работает со мной:
MyListControl myListControl = (MyListControl)page.LoadControl("~/Controls/MyListControl.ascx");
myListControl.SourceId = 1;
//Further Processing
в верхней части моей страницы, у меня есть:
using MyProject.UI.Controls;