2010-11-14 89 views
1

我需要我的子頁面才能在加載之前設置母版頁的某些屬性的值。ASP.NET:如何在代碼隱藏中的Masters/Pages之間傳遞標準信息?

換句話說,如何我的應用程序如何構建客戶端的母版頁取決於後端子頁面設置的屬性。

例如:

public partial class mstrPage : System.Web.UI.MasterPage 
{ 
    public int Rows { get; set; } 
    public int Cols { get; set; } 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     /* Build a .NET two-dimensional-array of divs 
      that is <Rows> tall and <Cols> wide. */ 
    } 
} 

在這個例子中,子頁面需要Page_Load()被調用爲法師之前設置的<Rows><Cols>值。

這對於在OOP中繼承來完成是相當簡單的,但ASP.NET網頁不會在代碼隱藏中「繼承」它們的主頁面。

在給出的例子中,設置這些屬性的ASP.NET子頁面的代碼隱藏是什麼樣的?

回答

1

很簡單......在頂部的母版頁上,設置了指令:

<%@ MasterType VirtualPath="~/MASTERPAGEFILE.master" %> 

在孩子的內容頁面,你可以通過鍵入訪問屬性:Master.PROPERTYNAME

參見:MSDN

+0

如果您發佈代碼或XML,**請**在文本編輯器中突出顯示這些行,然後單擊編輯器工具欄上的「代碼」按鈕(101 010),以更好地格式化和語法突出顯示它! – 2010-11-14 20:28:01

+0

當然,我的錯誤。 – Daniel 2010-11-14 20:29:58

相關問題