編輯器加載中...這篇很短的文章展示了ASP.NET2.0中的母板頁和內容頁在Windows SharePoint Services v3.0中的應用。WSS 3.0 是在ASP.NET 2.0 的基礎上實現的,
這篇很短的文章展示了ASP.NET2.0中的母板頁和內容頁在Windows SharePoint Services v3.0中的應用。WSS 3.0 是在ASP.NET 2.0 的基礎上實現的,所以WSS 3.0中母板頁/內容頁也是基于ASP.NET 2.0中的相應功能而實現站點定制的。網上已經有很多介紹ASP.NET2.0中母版頁的文章了。下面提供的鏈接來源與MSDN,個人認為是一篇介紹ASP.NET 2.0中母版頁組成結構的很好的入門文章。
http://msdn.microsoft.com/msdnmag/issues/04/06/ASPNET20MasterPages/?
全局母版頁
母版頁允許多級嵌套。所有在SharePoint中的站點都使用default.master這個母版頁。這個文件位于C:Program FilesCommon FilesMicrosoft Sharedweb server extensionsTEMPLATEGLOBAL這個目錄下。這個default.master母版頁是全局母版頁。任何對該頁面的修改將影響所有的SharePoint站點,而且會影響管理中心站點。
在SharePoint Designer中編輯母版頁
SharePoint Designer是原來的FrontPage的替代工具。SPD(就是SharePoint designer)允許網站設計者以可視化的設計界面定制SharePoint站點的外觀和樣式。當我們打開一個SharePoint站點,SPD的左上方會列出站點的結構。這個SharePoint站點里面包括的文件夾,列表,模板和頁面一目了然。我們要找的母版頁位于以下路徑:_catalogs/masterpage/default.master
在設計視圖中查看站點的母版頁,在XHTML標記中指定了全局母版頁。在我們對其做編輯之前,實際上所有的這個指向都指到同一個頁面。但當我們編輯并保存后,SPD會在SharePoint的數據庫中為我們保存一個定制后的母版頁版本。這和SharePoint 2003中的頁面定制機制(或者叫un-ghosting)是一樣的。當一個頁面被定制后,之前的ghosting關系就被斷掉了。即不會在指向磁盤文件系統中的某個文件,而是在數據庫中保存了該頁面的定制后版本。
注意:在對站點的母版頁做了改動后,這個改動將影響站點下所有的頁面。但在_layouts目錄下的頁面除外。因為這些頁面實際上不是站點內的頁面,它們使用了一個不同的母版頁(實際上也放在_layouts目錄下)。這類頁面的一個典型的例子就是“網站設置”頁面。
SPD可以允許我們將已經定制過的頁面恢復成原來的模板指定的狀態。這是我們在FrontPage時代夢寐以求的一個功能。在定制后的頁面文件上點擊右鍵,在上下文菜單中就包括了這個選項。
內容頁面
SharePoint里的內容頁在頁面聲明中使用MasterPageFile屬性指定了其使用的母版頁。典型的默認母版頁的URL地址為~masterurl/default.master。其中的~masterurl指定了該站點的母版頁的存放位置,所有的這些都是又SharePoint控制的。在SharePoint的母版頁中定義了許多占位符(content placeholder)。這些占位符定義了頁面的不同區域,開發人員可以定制占位符最終顯示給用戶的內容。SharePoint中定義的占位符中多數并不允許用戶重寫其內容。
多數的SharePoint頁面都包括了PlaceHolderMain這個占位符,它控制了頁面的主要內容部分。典型情況下,該占位符將包括一個web部件區域,用來拖webpart進去。但對于開發人員來說,我們可以用來放置我們想要放的任何東西。
下面的表格列出了SharePoint的母版頁中定義的占位符:(詳細位置請對照default.master)
?
占位符的Name
描述
PlaceHolderAdditionalPageHead
需要寫在頁面<head>標簽里的附加內容,如引用的腳本或樣式文件
PlaceHolderBodyAreaClass
附加在頁面頂部的body中的樣式
PlaceHolderBodyLeftBorder
頁面body的邊框元素
PlaceHolderBodyRightMargin
頁面body的右邊距
PlaceHolderCalendarNavigator
在頁面中有日歷時為其顯示一個日期選擇框
PlaceHolderFormDigest
這是頁面中必備的 "form digest"安全組件
PlaceHolderGlobalNavigation
站點導航
PlaceHolderHorizontalNav
導航標簽
PlaceHolderLeftActions
左側導航區下面的動作區
PlaceHolderLeftNavBar
左側導航區
PlaceHolderLeftNavBarBorder
左側導航區的邊框元素
PlaceHolderLeftNavBarDataSource
左側導航區菜單的數據源
PlaceHolderLeftNavBarTop
左側導航區上面的導航區
PlaceHolderMain
頁面主體
PlaceHolderMiniConsole
一個放置頁面級命令的地方,比如在WIKI站點里的Edit Page, History, Incoming Links
PlaceHolderNavSpacer
左側導航區的寬度
PlaceHolderPageDescription
頁面描述區
PlaceHolderPageImage
頁面左上的圖標
PlaceHolderPageTitle
頁面的<Title>,通常顯示在瀏覽器的標題欄
PlaceHolderSearchArea
搜索框
PlaceHolderSiteName
站點名稱
PlaceHolderTitleAreaClass
TitleArea附加的樣式
PlaceHolderTitleAreaSeparator
TitleAreaSeparator區
PlaceHolderTitleBreadcrumb
TitleBreadcrumb區
PlaceHolderTitleInTitleArea
Breadcrumb區下面的標題
PlaceHolderTitleLeftBorder
Title區左側邊框
PlaceHolderTitleRightMargin
Title區右側空白
PlaceHolderTopNavBar
標簽導航區
PlaceHolderUtilityContent
頁面底部需要的一塊特殊內容
SPNavigation
在 Windows SharePoint Services中默認為空,用于附加的頁面編輯控件
WSSDesignConsole
頁面編輯控件,當頁面進入編輯頁面模式時使用(當我們點 Site Actions, Edit Page后)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
