Изменить тему с MasterPage - PullRequest
0 голосов
/ 18 июля 2010

У меня есть MasterPage с двумя кнопками изображений и двумя страницами содержимого. Я хочу, чтобы при нажатии кнопки «Изображение» ----> тема менялась.

Я знаю, что MasterPage неесть функция «OnPreInit», и тема должна быть изменена внутри функции «OnPreInit» ...

, так что есть ли решение этой проблемы ???

Заранее спасибо.

Бахер

Ответы [ 2 ]

3 голосов
/ 18 июля 2010

Ниже приведен процесс, используемый в книге «Начало ASP.Net 4 в C # и VB.Net от Imar Spaanjaars». Обратите внимание, что в книге он использует DropDownList для изменения темы, но я считаю, что то же самое можно сделать с помощью кнопки «Изображение»:

  1. В MasterPage добавьте код в событие нажатия кнопки изображения, чтобы сохранить имя темы в файле cookie. После того, как файл cookie установлен, вы перенаправляете обратно на текущую страницу.
  2. Вам потребуется создать пользовательскую BasePage, которая наследуется от класса Page, и все ваши страницы наследуются от этой BasePage. Именно в этой BasePage вы переопределите Page_PreInit, чтобы загрузить выбранную тему на основе значения файла cookie. Перенаправление заключается в запуске кода в Page_PreInit для изменения темы.

Я знаю, что это может быть не лучшим вариантом, потому что вам нужно будет изменить все свои страницы, чтобы наследовать их от новой BasePage вместо Page.

0 голосов
/ 25 августа 2010

Ну, я нашел решение для того, что я нажал кнопку изображения, а затем изменил тему

действительно просто

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...