飘遥的Blog

C/C++/.NET
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SharePoint(WSS)学习(5) 使用母板页

Posted on 2008-11-16 16:14  Zzx飘遥  阅读(675)  评论(0编辑  收藏  举报
使用母版页能使站点保持一致的风格,SharePoint中使用也跟ASP.NET网站使用一样简单。

1.使用WSS自带的母版页。
WSS自带的母版页位于:C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\GLOBAL
可以打开能够看到有很多占位符,我们在子页中添加占位符的内容。
继续使用上一节的例子。
aspx文件内容改为:
<%@ Page Language="C#" MasterPageFile="~masterurl/default.master" %>

<asp:Content ContentPlaceHolderID="PlaceHolderMain" runat="server">
    
<asp:TextBox ID="txt1" runat="server" Width="100"></asp:TextBox>
    
<asp:Button ID="btn1" runat="server" Text="Button" OnClick="ShowMessage" />
</asp:Content>

<script type="text/C#" runat="server">
    void ShowMessage(object sender, EventArgs e)
    {
        txt1.Text
= "My Page!!";
    }
</script>

然后部署设置即可,运行结果如图:


说明:
MasterPageFile="~masterurl/default.master"中的~masterurl是SharePoint母版页的路径常量。
VS2008+Svcs1.2无法自动找到该路径下的母版页,因此切换到设计视图会出错,折中的解决方法是把母版页等拷贝的新建的Module的目录进行设计。
添加母版页对应的ContentPlaceHolder,可设置占位符的内容。

2.自定义母版页
除了使用系统母版页,可以自定义母版页。
方法也非常简单。
新建名为MyMaster.master的文件,内容结构同ASP.NET站点的Master页:
<%@ Master Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    
<title>母版页 - 飘遥的BLOG http://www.xianfen.net/</title>
</head>
<body style="background-color:#83B0EC;">
    
<form id="form1" runat="server">
    
<div style="margin-top:50px; margin-left:50px; background-color:#FFE59D; width:500px; height:100px;">
        
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
        
        
</asp:ContentPlaceHolder>
    
</div>
    
</form>
</body>
</html>

子页内容为:
<%@ Page Language="C#" MasterPageFile="MyMaster.master" Title="子页 - 飘遥的BLOG http://www.xianfen.net/" %>

<asp:Content ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    
<asp:TextBox ID="txt1" runat="server" Width="100"></asp:TextBox>
    
<asp:Button ID="btn1" runat="server" Text="Button" OnClick="ShowMessage" />
</asp:Content>

<script type="text/C#" runat="server"> 
    
void ShowMessage(object sender, EventArgs e)
    {
        txt1.Text
= "My Page!!";
    }
</script>

编译部署设置后,运行效果如图:


示例下载:点击下载

飘遥的BLOG:http://www.cnblogs.com/zxjay/
作者:飘遥(周振兴)