博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
场解决方案添加webpart(Create Webpart to page using code)
阅读量:6326 次
发布时间:2019-06-22

本文共 2999 字,大约阅读时间需要 9 分钟。

///         /// 向页面添加Webpart        ///         /// 站点        /// 页面地址        /// Webpart名称        /// WebPartZone的ID        /// ZoneIndex        /// 字典类型的杂项名称和值        /// 
public static string AddWebPartToPage(SPWeb web, string pageUrl, string webPartName, string zoneID, int zoneIndex, Dictionary
properties) { using (Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager = web.GetLimitedWebPartManager( pageUrl, PersonalizationScope.Shared)) { using (WebPart webPart = CreateWebPart(web, webPartName, webPartManager)) { Microsoft.SharePoint.WebPartPages.SPUserCodeWebPart codeWebPart = webPart.WebBrowsableObject as Microsoft.SharePoint.WebPartPages.SPUserCodeWebPart; if (properties != null) { foreach (string key in properties.Keys) { foreach (Microsoft.SharePoint.WebPartPages.SPUserCodeProperty item in codeWebPart.Properties) { if (item.Name == key) { item.Value = properties[key]; } } } } webPart.ChromeType = PartChromeType.None;//设置部件版式类型 设置 无 webPartManager.AddWebPart(webPart, zoneID, zoneIndex); return webPart.ID; } } } public static WebPart CreateWebPart(SPWeb web, string webPartName, Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager) { SPQuery qry = new SPQuery(); qry.Query = String.Format("
{0}
", webPartName); SPList webPartGallery = null; if (null == web.ParentWeb) { webPartGallery = web.GetCatalog( SPListTemplateType.WebPartCatalog); } else { webPartGallery = web.Site.RootWeb.GetCatalog( SPListTemplateType.WebPartCatalog); } SPListItemCollection webParts = webPartGallery.GetItems(qry); XmlReader xmlReader = new XmlTextReader(webParts[0].File.OpenBinaryStream()); string errorMsg; WebPart webPart = webPartManager.ImportWebPart(xmlReader, out errorMsg); return webPart; }

调用

Dictionary
properity = new Dictionary
(); properity.Add("CalendarURL", "/SystemSetting/Lists/EnterpriseCalendar/AllItems.aspx"); CommonUtil.AddWebPartToPage(systemWeb, "/SystemSetting/SitePages/CalendarView.aspx", "EnterpriseCalendarViewWebPart.webpart", "Left", 0, properity);

转载于:https://www.cnblogs.com/NetUser/archive/2012/08/14/2637544.html

你可能感兴趣的文章
LAMP小应用
查看>>
2019一消《综合能力》重要知识点:建筑内部装修检查
查看>>
科技企业的幕后推手,人工智能究竟有何魔力
查看>>
详解Oracle临时表的几种用法及意义
查看>>
HTML(七)------ 表格
查看>>
如何成为一个设计师和程序员混合型人才
查看>>
unable to load selinux policy. machine is in enforcing
查看>>
2015年10月23日作业
查看>>
MySQL5.7 加强了root用户登录安全性
查看>>
CentOS 6.3_Nagios安装配置与登录
查看>>
加强型的记录集权限(数据集权限、约束表达式设置功能)实现方法界面参考...
查看>>
Linux 内存机制
查看>>
linux下定时任务
查看>>
SharePoint 2013 部署 Part 1
查看>>
DWGSee看图纸dwg文件阅读器免费下载地址
查看>>
spring-使用XML配置声明式事务
查看>>
bootstrap-模态框
查看>>
C#常用数据结构的时间复杂度及其适用场景
查看>>
活动目录最佳实践分析器
查看>>
LDAP基础功能(重点为搜索:ldapsearch)
查看>>