исправлено расположение в шаблоне формы - PullRequest
1 голос
/ 03 июня 2010

У меня n страниц с формами просмотра, все из которых имеют похожий макет внутри своих элементов / редактировать / вставлять шаблоны.

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

У меня вопрос: как я могу применить этот стиль во всех моих формах просмотра, не повторяя все время одни и те же массовые стили CSS?

Теперь я использую мастер-страницы для этого с несколькими формами просмотра на 1 странице. Это не хорошо, я думаю. Я хочу одну страницу для редактирования / вставки / элемента и одну форму.

Я бы предпочел как-то определить стиль для шаблона редактирования один раз и загрузить его в каждый вид формы. Конечно, не все формы имеют одинаковые поля, поэтому, как и на мастер-страницах, я хотел бы иметь «области», в которые я могу поместить свои поля.

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

Любые идеи приветствуются.

Edit: Я читал, что это возможно в .Net 4 с использованием динамических данных. Я застрял с 3,5 на данный момент.

Ответы [ 2 ]

1 голос
/ 04 июня 2010

Вы можете установить CSSClass для представления формы или другого стандартного контейнера, чем использовать дочерние селекторы в вашем CSS.

0 голосов
/ 03 июня 2010

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

<asp:FormView  runat="server" 
      RowStyle-BackColor="Blue" />

Теперь вы можете заставить страницы в вашем приложении использовать тему, введя следующее в web.config.

 <pages theme="Theme1">

Также вы можете использовать RowStyle-CSSClass или EditRowStyle (чтобы применить к редактированию шаблона). Вы также можете ввести файл таблицы стилей в ту же папку Theme

...