Sharepoint 2010 在c中设置自定义Web部件属性的值
如何在C中编程设置自定义Web部件属性的值Sharepoint 2010 在c中设置自定义Web部件属性的值,sharepoint-2010,Sharepoint 2010,如何在C中编程设置自定义Web部件属性的值 SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite SiteCollection = new SPSite(mySiteGuid)) { SPWeb myWeb = SiteCollection.OpenWeb(myWebGuid); myWeb .AllowUnsafeUpdates = true; Microsoft.
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite SiteCollection = new SPSite(mySiteGuid))
{
SPWeb myWeb = SiteCollection.OpenWeb(myWebGuid);
myWeb .AllowUnsafeUpdates = true;
Microsoft.SharePoint.WebPartPages.SPLimitedWebPartManager mgr = null;
mgr = myWeb.GetLimitedWebPartManager ("default.aspx",System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared);
foreach (System.Web.UI.WebControls.WebParts.WebPart myWebPart in mgr.WebParts)
{
if (myWebPart.Title == "Other Webpart Name")
{
myWebPart.Visible = ! myWebPart.Visible;
myWeb.Update();
break;
}
}
}
})
我在Web部件中有一个字符串类型的自定义属性,用于从用户处获取输入。
我想从c更新属性的值。
有没有办法设定这个值
TIA尝试myWebPart.Update而不是myWeb.Update。也许回答这个问题有点晚了,但这里我给出了一段用于此的代码
var webCollection = new SPSite("http://mySharePointSite").AllWebs;
foreach (SPWeb web in webCollection)
{
var landingPageReference = @"/Pages/default.aspx";
var page = web.GetFile(landingPageReference);
if (!page.Exists)
continue;
page.CheckOut();
var spLimitedWebPartManager = web.GetLimitedWebPartManager(page.ServerRelativeUrl, PersonalizationScope.Shared);
foreach (WebPart webPartItem in spLimitedWebPartManager.WebParts)
{
if (webPartItem.Title.Equals("myWebPartTitle"))
{
// Specify Properties to change here
webPartItem.ChromeType = PartChromeType.Default;
webPartItem.Description = "AGAIN CHANGED";
// Save made changes
spLimitedWebPartManager.SaveChanges(webPartItem);
break;
}
}
page.CheckIn("Add Comment if desired");
page.Publish("Add Comment if desired");
web.Update();
web.Dispose();
}
隐马尔可夫模型。。。如果您希望您的自定义WP根据登录的用户调整或更改数据,您应该在WP中编写该代码,而不是在外部公开该代码,然后尝试进行设置。