是否有人知道如何以编程方式更新任何标准SharePoint v3 Web部件的内容?
例如,在页面上放置链接摘要Web部件。添加一些链接。现在,如何使用WSS API更新此信息? 我没有找到任何直接的方法来做到这一点,到目前为止我唯一的想法是导出Web部件,然后删除它,修改生成的XML,然后将其导回。但当然,必须有一种更简单的方法吗?
答案 0 :(得分:9)
您可以使用SPLimitedWebPartManager类来操作Web部件页面上的Web部件。可以从SPFile对象获取此类的实例,如下所示:
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部件。
答案 1 :(得分:5)
您可能需要致电SPWeb.GetWebPartCollection并使用webpart集合来处理WebParts thusly