母版頁是vs2005 以來最重要的新功能之一, 它如此出色地改變了整個系統的結構, 以至於我覺得不用它簡直就是一種犯罪. 關於母版頁的定義及基本用法網上隨處可見, 這裡不再贅述, 我大概地總結一下母版頁與內容頁互動的幾種情況.
說來奇怪, 母版頁從推出到現在也有不少的一段時間了, 可是在網上卻幾乎搜不出來幾篇有價值的文章, 多數停留在hello world 的水平, 這裡的方法基本上都是我自己摸索出來的, 所以很可能不是最好的方法, 不過它們確實是有效的.
(一) 母版頁使用內容頁的控制項
contentplaceholder1.findcontrol("gv1") as gridview;
(二) 內容頁使用母版頁的控制項
母版頁中:
public panel panelgv
} 內容頁中:
master.panelgv
需要說明的是, 在內容頁中, 如果要使用master 的屬性, 應該在頁面最上面增加 mastertype 指令, 例如:
<%@ mastertype virtualpath="~/master.master" %>
或者不加這個指令, 在頁面中用((mymastertype)master).property .
(三) 母版頁呼叫內容頁的函式
母版頁中:
public delegate void noargeventhandler();
public event noargeventhandler evt1;
//某函式中呼叫內容頁函式:
public void f1()
f1 函式中寫入自定義**即可.
需要注意的是, 內容頁的繫結語句必須直接放在page_load 每次執行.
(四) 內容頁中呼叫母版頁的函式
內容頁可以直接呼叫母版頁的public 函式.
1. 需要說明的是, 在內容頁中, 如果要使用master 的屬性, 必須在頁面最上面增加 mastertype 指令, 例如:
<%@ mastertype virtualpath="~/master.master" %>
母版頁訪問內容頁
內容頁訪問母版頁,理所當然,是人都知。但母版頁訪問內容頁呢?用委託。實現 1 母版頁宣告和定義乙個委託 2 內容頁裡將具體實現方法附加到委託上 3 母版頁檢查該委託是否為空,非空的話就執行該委託 母版頁 public delegate void dlgshowcontent string conte...
母版頁的內容頁不顯示內容
問題 母板頁設定好了,可是繼承自它的內容頁卻不顯示 確切的說是只能顯示到div之前的內容 解決辦法 母板頁中把控制項放到了contentplaceholder控制項裡,將其拖到contentplaceholder之外即可。演示 在這裡演示乙個母版頁的 內容頁僅僅只是繼承自它 錯誤 錯誤顯示 正確 正...
母版頁判斷登陸 及 母版頁與內容頁的執行順序
轉 public static void check page apage 在母版頁裡呼叫的正確方法 protected void page init object sender,eventargs e 原因 母版頁和內容頁的執行順序 1.母版頁中控制項的init 2.內容頁控制項的init 3.母...