ASP.NET динамическое изменение основной страницы

Действительно ли возможно изменить основную страницу довольной страницы щелчком кнопки на той довольной странице?

Если не, почему?

6
задан user366312 24 December 2009 в 13:33
поделиться

3 ответа

Возможно, вам придется переопределить метод OnPreInit вашего класса codebehind подобно тому, как...

protected override void OnPreInit(EventArgs e)
{
    Page.MasterPageFile = "~/your/masterpage.master";
}

Чтобы привязать это к клику, можно использовать параметр строки запроса, т.е.

<a href="<%=Request.Url.ToString()%>?masterPage=alternative">Use
alternative master page</a>

А затем в кодебеинде

protected override void OnPreInit(EventArgs e)
{
    if(Request["masterPage"] == "alternative")
    { Page.MasterPageFile = "~/your/alternative/masterpage.master"; }
}
13
ответ дан 8 December 2019 в 13:00
поделиться

Можно программно настроить главную страницу, но сделать это можно только в событии pre-init.

http://odetocode.com/articles/450.aspx

2
ответ дан 8 December 2019 в 13:00
поделиться

Вы можете иметь обычный, не серверный

, со скрытым полем. Когда сообщения формы, вы проверяете значение в событии Pre_Init, и меняете там главную страницу.

Вы не можете использовать серверную форму с обычным событием кнопки, так как они стреляют слишком поздно в жизненном цикле страницы.

.
2
ответ дан 8 December 2019 в 13:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: