public override void FeatureActivated(SPFeatureReceiverProperties properties) { SPSite site = properties.Feature.Parent as SPSite; PublishingWeb pWeb = PublishingWeb.GetPublishingWeb(site.RootWeb); bool pageNotCreated = !pWeb.GetPublishingPages().Cast <PublishingPage>().Any(p => p.Name == pageName); if (pageNotCreated) { //если такой страницы еще нет - создаем ее PublishingPage pPage = pWeb.GetPublishingPages().Add(pageName, null); pPage.CheckOut(); using (Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager wpManager = site.RootWeb.GetLimitedWebPartManager(pPage.Url, PersonalizationScope.Shared)) { ResultScriptWebPart searchResults = GetImportedWebPart(site, wpName) as ResultScriptWebPart; searchResults.Title = wpTitle; searchResults.ChromeType = PartChromeType.None; wpManager.AddWebPart(searchResults, "Top", 0); } pPage.CheckIn(string.Empty); } }
public override WebPart CreateWebPart(SPWeb web, Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager) { SPList list = GetList(web, ListUrl, ListName); if (list == null) { return(null); } Microsoft.SharePoint.WebPartPages.ListViewWebPart webPart = new Microsoft.SharePoint.WebPartPages.ListViewWebPart(); webPart.ListId = list.ID; webPart.Title = Title; webPart.WebId = list.ParentWeb.ID; //webPart.ChromeType = System.Web.UI.WebControls.WebParts.PartChromeType.TitleAndBorder; SPView view = GetView(list, ViewName); webPart.ViewGuid = view.ID.ToString(); webPart.ListViewXml = view.GetViewXml(); webPart.ExportMode = WebPartExportMode.All; base.UpdateProperties(webPart); return(webPart); }
public override WebPart CreateWebPart(SPWeb web, Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager) { SPQuery qry = new SPQuery(); qry.Query = String.Format(CultureInfo.CurrentCulture, "<Where><Eq><FieldRef Name='FileLeafRef'/><Value Type='File'>{0}</Value></Eq></Where>", this.WebpartName); SPList webPartGallery = null; if (web.ParentWeb == null) { 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); //webPart.Hidden = isHidden; base.UpdateProperties(webPart); return(webPart); }
protected virtual void ProcessWebPartDeletes( Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager wpManager, IEnumerable <WebPart> spWebPartDefenitions, DeleteWebPartsDefinition definition) { var webParts2Delete = new List <WebPart>(); if (definition.WebParts.Any()) { foreach (var webPartMatch in definition.WebParts) { var currentWebPartMatch = FindWebPartMatch(spWebPartDefenitions, webPartMatch); if (currentWebPartMatch != null && !webParts2Delete.Contains(currentWebPartMatch)) { webParts2Delete.Add(currentWebPartMatch); } } } else { webParts2Delete.AddRange(spWebPartDefenitions); } // clean up for (var index = 0; index < webParts2Delete.Count; index++) { wpManager.DeleteWebPart(webParts2Delete[index]); } }
public override WebPart CreateWebPart(SPWeb web, Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager) { Microsoft.SharePoint.WebPartPages.ContentEditorWebPart webPart = new Microsoft.SharePoint.WebPartPages.ContentEditorWebPart(); // Create an XmlElement to hold the value of the Content property. XmlDocument xmlDoc = new XmlDocument(); XmlElement xmlElement = xmlDoc.CreateElement("MyElement"); xmlElement.InnerText = Content; // Set the Content property to the XmlElement. webPart.Content = xmlElement; base.UpdateProperties(webPart); return(webPart); }
private void SaveChartProperties() { SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite SiteCollection = new SPSite(sWpPagePath)) { // get the web in this context using (SPWeb myWeb = SiteCollection.OpenWeb()) { myWeb.AllowUnsafeUpdates = true; string path = string.Empty; path = sWpPagePath.Replace(myWeb.Url + "/", ""); SPFile page = myWeb.GetFile(path); // Hide/display another webpart. Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager mgr = null; mgr = page.GetLimitedWebPartManager(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared); foreach (System.Web.UI.WebControls.WebParts.WebPart myWebPart in mgr.WebParts) { // If this is the webpart we want to modify... if (myWebPart.ID == sWpId) { // Change Properties ReportingChart.ReportingChart rc = (ReportingChart.ReportingChart)myWebPart; // save properties rc.PropChartSelectedListTitle = sPropChartSelectedListTitle; rc.PropChartSelectedViewTitle = sPropChartSelectedViewTitle; rc.PropChartType = (ReportingChart.ChartType)Enum.Parse(typeof(ReportingChart.ChartType), sChartType); rc.PropChartAggregationType = sPropChartAggregationType; rc.PropChartXaxisField = sPropChartXaxisField; rc.PropChartYaxisField = sPropChartYaxisField; rc.PropYaxisFormat = sPropYaxisFormat; rc.PropChartZaxisField = sPropChartZaxisField; rc.PropBubbleChartGroupBy = sPropBubbleChartGroupBy; rc.PropChartTitle = sChartTitle; rc.PropChartSelectedPaletteName = sPropChartSelectedPaletteName; rc.PropChartShowSeriesLabels = bool.Parse(sPropChartShowSeriesLabels); rc.PropChartShowGridlines = bool.Parse(sPropChartShowGridlines); rc.PropChartShowLegend = bool.Parse(sPropChartShowLegend); rc.PropChartLegendPosition = sPropLegendPosition; mgr.SaveChanges(myWebPart); break; } } } } }); }
/// <summary> /// Получение импортированной веб части /// </summary> /// <param name="site">Сайт коллекция</param> /// <param name="wpName">Имя веб части</param> /// <returns>Объект веб части</returns> public static WebPart GetImportedWebPart(SPSite site, string wpName) { string error = String.Empty; var wpSetttings = site.RootWeb.GetFileAsString(String.Format("{0}/_catalogs/wp/{1}", site.RootWeb.Url, wpName)); using (Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager wpManager = site.RootWeb.GetLimitedWebPartManager(site.RootWeb.RootFolder.WelcomePage, PersonalizationScope.Shared)) { using (var stringReader = new StringReader(wpSetttings)) { using (XmlTextReader reader = new XmlTextReader(stringReader)) { var wp = wpManager.ImportWebPart(reader, out error); return(wp); } } } }
public virtual WebPart CreateWebPart(SPWeb web, Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager webPartManager) { return(default(WebPart)); }