2009-01-27 61 views
7

是否有人知道如何以編程方式更新任何標準SharePoint v3 Web部件的內容?如何以編程方式更新SharePoint Web部件中的內容?

作爲示例,請在頁面上放置鏈接摘要Web部件。添加一些鏈接。現在,我如何使用WSS API更新這些信息? 我還沒有找到任何直接的方法來做到這一點,到目前爲止我唯一的想法是導出Web部件(然後刪除它),修改生成的XML並將其導回。但是,肯定有一個更簡單的方法?

+0

你是什麼意思的「改變內容」? – 2009-01-27 22:17:51

回答

9

可以使用SPLimitedWebPartManager類操縱Web部件頁上的Web部件。

using (SPSite site = new SPSite("<site url>")) // e.g. http://server/sites/asite 
using (SPWeb web = site.OpenWeb()) 
{ 
    SPFile file = web.GetFile("<page url>"); // e.g. /sites/asite/default.aspx 
    SPLimitedWebPartManager lwpm = file.GetLimitedWebPartManager(); 
    SPLimitedWebPartCollection webParts = lwpm.WebParts; 
    WebPart wp = webParts[<id, index or Guid>]; 

    // Add your code to update the Web Part 

    lwpm.SaveChanges(wp); 
} 

您也可以與SPLimitedWebPartManager添加或刪除Web部件:這個類的一個實例可以從SPFILE對象按如下方式獲得。