[英]Programmatically insert a List as a webpart in a webpart page in WSS 3.0
我嘗試在網上搜索以編程方式在Webpart頁面中插入一個List作為webpart但是不夠幸運。
任何想法或想法如何我可以編程方式在Webpart頁面中插入一個列表作為webpart
非常感謝!
首先添加這些使用語句。
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebPartPages;
然后在你的代碼中
// First get the list
SPSite site = new SPSite("http://myserver");
SPWeb web = site.OpenWeb();
SPList list = web.Lists["MyCustomlist"];
// Create a webpart
ListViewWebPart wp = new ListViewWebPart();
wp.ZoneID = "Top"; // Replace this ith the correct zone on your page.
wp.ListName = list.ID.ToString("B").ToUpper();
wp.ViewGuid = list.DefaultView.ID.ToString("B").ToUpper();
// Get the web part collection
SPWebPartCollection coll =
web.GetWebPartCollection("default.aspx", // replace this with the correct page.
Storage.Shared);
// Add the web part
coll.Add(wp);
如果您想使用自定義視圖,請嘗試使用以下方法:
SPView view = list.GetUncustomizedViewByBaseViewId(0);
wp.ListViewXml = view.HtmlSchemaXml;
希望它有所幫助,W0ut
為了使其更易於作為功能接收器的一部分使用,您可以將splist和spview作為方法的一部分傳遞:
static public void AddEventsListViewWebPart(PublishingPage page, string webPartZoneId, int zoneIndex, string webPartTitle, PartChromeType webPartChromeType, string listName, string viewname)
{
using (SPLimitedWebPartManager wpManager = page.ListItem.File.GetLimitedWebPartManager(PersonalizationScope.Shared))
{
SPWeb web = page.PublishingWeb.Web;
SPList myList = web.Lists.TryGetList(listName);
using (XsltListViewWebPart lvwp = new XsltListViewWebPart())
{
lvwp.ListName = myList.ID.ToString("B").ToUpperInvariant();
lvwp.Title = webPartTitle;
// Specify the view
SPView view = myList.Views[viewname];
lvwp.ViewGuid = view.ID.ToString("B").ToUpperInvariant();
lvwp.TitleUrl = view.Url;
lvwp.Toolbar = "None";
lvwp.ChromeType = webPartChromeType;
wpManager.AddWebPart(lvwp, webPartZoneId, zoneIndex);
}
}
}
然后在功能激活期間調用它:
AddEventsListViewWebPart(welcomePage, "Right", 1, "Events", PartChromeType.TitleOnly, "Events", "Calendar");
您需要執行兩個步驟才能將Web部件添加到頁面。 首先,您必須創建要在頁面上顯示的列表。 因此,您可以使用網站列表集合的Add()方法( SPListCollection )。
要在Web部件頁面上顯示列表,您必須使用頁面的SPLimitedWebPartManager將ListViewWebPart添加到Web部件頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.