2010-09-01 2 views
3

Я хочу создать главную страницу для моего уже разработанного проекта. Поскольку проект содержит множество форм, довольно сложно включить главную страницу в каждую форму ... Есть ли какие-либо возможности включить главную страницу в любой другой простой способ ...Главное меню страниц

Пожалуйста, дайте несколько советов ..

Спасибо заранее ...

ответ

1

насколько я знаю, не существует простой способ сделать это.

Вам придется вручную добавить MasterPage в директиве

<%@ Page MasterPageFile="~/Masterpage.master" ... %> 

страницу добавить соответствующие разделы контента вокруг ваших страниц разметки:

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
</asp:Content> 

и удалить <html>, <head>, <body> and <form> теги каждой страницы.


Update

Here статья (и исходный код) Боб Пауэлл, описывающий способ автоматического преобразования HTML файлов в ASPX файлы и добавить главную страницу. Я уверен, что вы можете приспособить его к вашим потребностям.

0

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

В качестве механизма поддержки вы также, вероятно, захотите иметь базовый класс страницы, способный передавать через главную страницу содержащиеся пользовательские элементы управления. В нашей группе у нас есть стандарт для установки свойства в UserControls и MasterPages под названием ParentForm, который относится к типу нашего основного класса основной страницы, и это свойство устанавливается во время Init любой страницы или элемента управления, чтобы в любое время разработчик доступ (через Intellisense) для самой страницы. Это особенно полезно, поскольку родительский элемент большинства элементов управления представляет собой контейнер, родитель которого является контейнером, чей родитель ... вы получаете идею. Для наших элементов управления это всего лишь this.ParentForm.

Это будет долгий процесс, но MasterPages действительно предназначался для того, чтобы быть архитектурным решением «основы», а не концепцией «использовать позже».

Смежные вопросы