ASP.NET MVC 1.0 Вложенные мастер-страницы
У меня проблема с моими мастер-страницами. У них есть такой порядок наследования:
MainMaster1.Master может быть вложен в Nested1.Master, Nested2.Master и т. Д. В то же время MainMaster может дублироваться и иметь рабочие копии, такие как MainMaster2, MainMaster3 и т. Д.
Посоветуйте, пожалуйста, как я могу динамически изменять MasterPageFile моих страниц Nested1, Nested2 и т. Д., Чтобы при необходимости они могли легко переключаться между MainMasters?
Я пытался обработать проблему в Page_PreInit вложенных мастеров, но не смог заставить ее войти в этот обработчик событий. Я также попытался изменить мастеров в "защищенном пустом OnPreInit" из вложенных, но результат был тот же.
Спасибо,
Римский.
2 ответа
В следующей статье вы найдете несколько возможных методов, которые вы можете использовать:
Динамическое переключение между главными страницами в ASP.NET MVC http://www.codeofrob.com/archive/2009/11/01/dynamically-switching-between-master-pages-in-asp.net-mvc.aspx
Я думаю, что он все еще имел в виду, хотя это не дает прямого ответа на вопрос.
Страница имеет свойство MasterPageFile, которое используется в статье выше. Страница также имеет свойство MasterPage.
На MasterPage есть свойство с именем MasterPageFile (как в приведенной выше статье). У MasterPage также есть свойство с именем MasterPage.
Хотя пример на этой странице посвящен непосредственному изменению главной страницы на странице, вы можете сделать очень похожее на саму главную страницу, пройдя по основным страницам, чтобы найти и изменить нужную вам страницу.
Надеюсь, это поможет.