Sharepoint 2010 在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.

如何在C中编程设置自定义Web部件属性的值

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中编写该代码,而不是在外部公开该代码,然后尝试进行设置。