【发布时间】:2011-08-02 17:31:22
【问题描述】:
在页面的代码隐藏中。
我如何获取页面上存在的 Web 部件, 然后使用 c# 将属性添加到该 web 部件。
webpart 存在于 webpartzone 中。
我需要对 SPWebPartManager 做些什么吗?
【问题讨论】:
-
你不需要使用 finally 来处理它,因为你已经在使用 "Using";
标签: c# sharepoint
在页面的代码隐藏中。
我如何获取页面上存在的 Web 部件, 然后使用 c# 将属性添加到该 web 部件。
webpart 存在于 webpartzone 中。
我需要对 SPWebPartManager 做些什么吗?
【问题讨论】:
标签: c# sharepoint
使用SPWeb.GetLimitedWebPartManager。以下示例演示了更新列表视图 Web 部件中的属性:
using (SPLimitedWebPartManager webPartManager =
SPContext.Current.Web.GetLimitedWebPartManager("default.aspx",
PersonalizationScope.Shared))
{
try
{
foreach (WebPart webPart in webPartManager.WebParts)
{
if (webPart.Title == "Web Part To Update")
{
ListViewWebPart listViewWebPart = (ListViewWebPart)webPart;
// TODO: Set property on web part
webPartManager.SaveChanges(listViewWebPart);
break;
}
}
}
finally
{
webPartManager.Web.Dispose();
}
}
您需要使用当前页面相对于 SPWeb 的名称,而不是 default.aspx。
【讨论】: