2011-05-11 57 views
0

我創建了一個ASP.NET網站,其中一些網頁需要有一個div浮動到左邊的網站菜單和其他網頁沒有菜單div,而是內容佔用整個頁面寬度。ASP.NET母版頁 - 控制是否顯示菜單html

我打算使用母版頁 - 我想知道如何最好地實現這一點 - 一些即時的想法涌現在腦海裏:

  • 創建2個母版頁,一個帶有菜單和一個沒有。在創建內容頁面時,請選擇要從哪個主體繼承。這很簡單,但如果網站設計更改,則可能需要更多返工
  • 使用菜單的內容佔位符創建單個主頁面。在每個頁面上只包含一個菜單div(如果需要的話)(這種方法似乎更加混亂)
  • 嵌套主頁面?

看起來這可能是一個普遍的問題,所以對如何解決這個問題很感興趣。注意我質疑需要沒有菜單的頁面 - 如果所有頁面都具有完全相同的結構,它會更簡單。

回答

1

嵌套的母版頁可能是標準答案,應該運行良好。

我想到的另一種方法是將菜單放在母版頁的面板控件上,並公開一個屬性,讓您切換面板的可見性。我還沒有嘗試過,所以我不確定它有多實用,但這可能是一個有趣的概念。如果它按照我期望的方式工作,則可以爲您提供一個可以通過內容頁面重新配置的主頁面。

0

這取決於個人喜好,但我建議的方式是創建嵌套母版頁, 第一個母版頁不包含菜單,但第二個母版頁將會然後指向其中一個母版頁。

0

嵌套母版頁應該可以解決您的問題並保持網站的可擴展性。

0

在我以前的公司,我們爲相似的場景使用了兩個獨立的母版頁。一個包括菜單,一個沒有。而且由於它們都繼承了相同的基礎母版頁,它們都具有相同的功能。

但是,我認爲這歸結於個人偏好。

就我個人而言,我喜歡這樣設計兩個單獨的頁面,與嵌套母版頁面相比,它更容易看到發生了什麼。