2016-12-01 5 views
1

У меня есть веб-форма, и я хочу, чтобы она была доступна для masterpage1 и masterpage2. Является ли это возможным? Если да, то как?Можно ли вызвать веб-форму на нескольких основных страницах?

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

+0

страница не может иметь несколько MasterPages –

+0

страница может иметь несколько вложенных MasterPages одновременно – fubo

ответ

2

Для упрощения предположим, что вы сохранили статус в пределах Session, который выбирает код главной страницы. В этом примере вы можете иметь 2 мастер-страницы и использовать только один из них в то же время:

//PreInit event of your desired page 
protected override void OnPreInit(EventArgs e) 
{ 
    if (!string.IsNullOrEmpty(Page.MasterPageFile)) 
    { 
     if (Session["MyStatus"] == "1") 
     { 
      Page.MasterPageFile = "~/MyMaster1.master"; 
     } 
     else 
     { 
      Page.MasterPageFile = "~/MyMaster2.master"; 
     } 
    } 
} 

Если вы хотите гнездятся два MasterPages динамически вы можете сделать это таким образом. Здесь у вас есть 2 главные страницы Simultaniously:

protected override void OnPreInit(EventArgs e) 
{ 
    if (!string.IsNullOrEmpty(Page.MasterPageFile)) 
    { 
     if (Session["NestMaster"] == "1") 
     { 
      //setting a MasterPage to the Masterpage of the current page 
      Page.Master.MasterPageFile = "~/MasterMaster.master"; 
     } 
    } 
} 
+0

Спасибо вам @fubo. :) Это очень помогло мне. :) – moonlight04

+0

отлично, добро пожаловать! – fubo