Sharepoint 2010 用VS定制Master,并且每个Web应用同一个Master
转:http://***/html/blogs/20130407/1381.htm
最近做了一个项目管理系统,要求用Sharepoint,有个特别的功能就是通过创建出来的子站点要求应用同一个Master页面,并且每次修改Master页面都要同时修改所有的子站点,有这个需求就限制了Master页面只能有一个,通过查找资料,最终找到了相应的解决方案,用VS定制Master页面,通过Feature EventReceive 和 EventReceive两个事件处理程序来完成操作,下面一步一步来介绍开发过程。
Name="ModuleMasterPage" Path="ModuleMasterPage" Url="_catalogs/masterpage">
<File
Url="CustomMasterPage.master" Type="GhostableInLibrary">
<Property
Name="UIVersion" Value="4"/>
<Property
Name="ContentTypeId" Value="0x010105"/>
</File>
</Module>
Name="ModuleStyle" Url="Style Library">
<File
Path="ModuleStyle\CustomCss.css" Url="ModuleStyle/CustomCss.css"
/>
</Module>
void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPSite site = properties.Feature.Parent as SPSite;
if (site !=
null)
{
string url = site.ServerRelativeUrl;
foreach (SPWeb web
in site.AllWebs)
{
web.MasterUrl = url + "_catalogs/masterpage/CustomMasterPage.master";
web.CustomMasterUrl = url + "_catalogs/masterpage/CustomMasterPage.master";
web.AlternateCssUrl = url + "Style Library/ModuleStyle/CustomCss.css";
web.UIVersion = ;
web.Update();
}
}
}
public
override void FeatureDeactivating(SPFeatureReceiverProperties properties)
{
SPSite site = properties.Feature.Parent as SPSite;
if (site !=
null)
{
string url = site.ServerRelativeUrl;
foreach (SPWeb web
in site.AllWebs)
{
web.MasterUrl = url + "_catalogs/masterpage/V4.master";
web.CustomMasterUrl = url + "_catalogs/masterpage/V4.master";
web.AlternateCssUrl = "";
web.SiteLogoUrl = "";
web.UIVersion = ;
web.Update();
}
}
}
<summary>
/// 已配置网站.
///
</summary>
public override
void WebProvisioned(SPWebEventProperties properties)
{
base.WebProvisioned(properties);
SPWeb web = properties.Web;
SPWeb rootWeb = properties.Web.Site.RootWeb;
web.MasterUrl = rootWeb.MasterUrl;
web.CustomMasterUrl = rootWeb.CustomMasterUrl;
web.AlternateCssUrl = rootWeb.AlternateCssUrl;
web.Update();
}
最后就是部署并激活Feature了,就这样解决了用户的要求,同时分享给大家了......
参考资料:Sharepoint 2010 开发最佳实践 这本书
Sharepoint 2010 用VS定制Master,并且每个Web应用同一个Master的更多相关文章
- SharePoint 2010 最佳实践学习总结------第1章 SharePoint Foundation开发基础
----前言 这段时间项目出在验收阶段,不是很忙,就潜心把SharePoint学一下,不求有多深刻,初衷只是先入门再说.后续会发布一系列的学习总结.主要学习的书籍为<SharePoint2010 ...
- Using SharePoint 2010 dialogs
转:http://www.techbubbles.com/sharepoint/using-sharepoint-2010-dialogs/ SharePoint 2010 dialogs are J ...
- SharePoint 2010升级到sharePoint 2013后,人员失去对网站的权限的原因及解决方法。The reason and solution for permission lost after the upgrading
昨天碰到了一个问题,一个网站在从SharePoint 2010升级到SharePoint 2013后,人员都不能登录了,必须重加赋权,人员才能登录,这样非常麻烦. 原因:是认证方式的问题.在Share ...
- [SharePoint 2010]关于基于声明(Claims)的用户认证模式
转:http://blog.csdn.net/zw_2011/article/details/7417132 SharePoint 2010在用户认证模式上,较之以前的版本有了非常大的改变.在Shar ...
- sharepoint 2010 创建自定义的ASP.NET Web Service (上)
项目背景 根据客户需求在SharePoint 2010 中创建自定义的ASP.NET Web Service可以分为3种方式(我所知道的).废话少说,下面一一列举: 创建方式 MSDN 官方博客自己的 ...
- sharepoint 2010 页面添加footer方法 custom footer for sharepoint 2010 master page
转:http://blog.csdn.net/chenxinxian/article/details/8720893 在sharepoint 2010的页面中,我们发现,没有页尾,如果我们需要给页面添 ...
- SharePoint 2010 master page 控件介绍(1)
转:http://blog.csdn.net/lgm97/article/details/6409204 以下所有的内容都是根据Randy Drisgill (MVP SharePoint Serve ...
- SharePoint 2010自定义母版页小技巧——JavaScript和CSS引用
通常在我们的项目中,都会涉及到母版页的定制.并且必不可少的,需要配合以一套自己的JavaScript框架和CSS样式.你有没有遇到过这样的情况呢,在开发环境和UAT时都还算顺利,但是当最终部署到生产服 ...
- 使用SharePoint 2010 母版页
SharePoint 2010母版页所用的还是ASP.NET 2.0中的技术.通过该功能,实现了页面框架布局与实际内容的分离.虽然在本质上自定义母版页的过程和以前版本的SharePoint大致相同,但 ...
随机推荐
- OpenJudge/Poj 1458 Common Subsequence
1.链接地址: http://poj.org/problem?id=1458 http://bailian.openjudge.cn/practice/1458/ 2.题目: Common Subse ...
- 通过正则表达式获取url中参数
url: http://xxxx.com?name=魅力&id=123 js中: var name = getUrlParam("name"); /*通过正则获取url中的 ...
- Application.StartupPath同System.Environment.CurrentDirectory区别
System.Windows.Forms.Application.StartupPath:获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称. System.Environment.Curr ...
- off() 方法 与 unbind() 方法移除绑定事件的处理程序。one()函数用于为每个匹配元素的一个或多个事件绑定一次性事件处理函数
off() 方法移除用.on()绑定的事件处理程序. unbind() 方法移除用.bind()绑定的事件处理程序. 从 jQuery 1.7开始, .on() 和 .off()方法是最好的元素上附加 ...
- Mysql,Oracle,Java数据类型对应
Mysql Oracle Java BIGINT NUMBER(19,0) java.lang.Long BIT RAW byte[] BLOB BLOB RAW byte[] CHAR CHAR j ...
- log4j配置文件写法
### direct log messages to stdout ###log4j.rootLogger=DEBUG,stdoutlog4j.appender.stdout=org.apache.l ...
- dtv_driver.ko
替换dtv_driver.ko .步骤: shell@android:/ # get_rootfs.sh ...
- 备忘·添加SublimeText3右键菜单
因为用的sublimeText3是免安装版,打开未关联文件,略有麻烦,所以搜了一下,发现几种解决办法,其中INF文件的方法很喜欢,备份下 [Version] Signature="$Wind ...
- [XJOI NOI02015训练题7] B 线线线 【二分】
题目链接:XJOI - NOI2015-07 - B 题目分析 题意:过一个点 P 的所有直线,与点集 Q 的最小距离是多少?一条直线与点集的距离定义为点集中每个点与直线距离的最大值. 题解:二分答案 ...
- c#中怎么删除一个非空目录
System.IO.Directory.Delete(@"C:\abc\",true)