Создание и динамическое использование шаблонов контента и элементов управления

#c# #templates #dynamic #joomla #controls

#c# #шаблоны #динамический #joomla #элементы управления

Вопрос:

Мне нужно создать динамический шаблон для содержимого моего сайта и динамически загружать в него элементы управления .ascx в Asp.Net c #.
Например, у меня есть пустая страница по умолчанию, и на ней динамически загружается мой html-шаблон, который хранится в базе данных или просто на html-странице, а затем в этом html (скажем, div) динамически загружаются другие элементы управления .ascx.

Мне это нужно, чтобы загрузить другой шаблон сайта для другого пользователя или домена и с разными виджетами.

Подобная идея используется в Joomla, вы можете изменить свой html-шаблон и css и по-разному выглядеть для разных поддоменов.

Любые идеи будут превосходны.

Ответ №1:

В общем, вы бы использовали .Использует мастер-страницы для создания шаблона с заполнителями для данных и с этой мастер-страницы (или ваших страниц, которые ее используют) динамически управляет тем, какие части заполнителей что должны показывать, какие элементы управления должны быть загружены и так далее.

Внимательно посмотрите на мастер-страницы http://msdn.microsoft.com/en-us/library/wtxbf3hh.aspx

 //Loading an .ascx dynamically is as simple as:
MyControlType myControl = (MyControlType)LoadControl("/location/MyControlType.ascx");
// and simply add it to the placeholders controls by
myPlaceHolder.Controls.Add(myControl);
  

Логика того, что загружать и добавлять, конечно, зависит от вас.