Как изменить значения свойств веб-части - PullRequest
1 голос
/ 05 июня 2009

В веб-части SharePoint 2007 я хочу удалить существующее свойство и заменить его свойством с другим именем. Я хочу получить значение из существующего свойства и назначить его новому свойству.

Как мне это сделать?

1 Ответ

2 голосов
/ 18 июня 2009

В итоге:

  • Получить ссылку на страницу, содержащую веб-часть.
  • Получить ссылку на саму веб-часть.
  • Изменить значение свойства.
  • Сохранить изменения.

В коде:

using (SPSite site = new SPSite("http://sharepoint"))
using (SPWeb web = site.OpenWeb("Web Title"))
using (SPLimitedWebPartManager webPartManager =
       web.GetLimitedWebPartManager("default.aspx", PersonalizationScope.Shared))
{
    try
    {
        foreach (WebPart webPart in webPartManager.WebParts)
        {
            if ((webPart.Title == "Web Part Title") && (!webPart.IsClosed))
            {
                YourWebPart wp = (YourWebPart)webPart;
                wp.NewProperty = wp.OldProperty;
                webPartManager.SaveChanges(wp);
                web.Update();
                break;
            }
        }
    }
    finally
    {
        webPartManager.Web.Dispose();
    }
}

Заменить следующее в этом примере кода:

  • "http://sharepoint" - адрес вашего сайта SharePoint
  • «Название веб-сайта» - заголовок веб-сайта SharePoint, содержащий веб-часть, которую нужно изменить (или использовать одну из других перегрузок OpenWeb
  • "default.aspx" - имя файла страницы, содержащей веб-части
  • "Заголовок веб-части" - заголовок, присвоенный веб-части на странице
  • YourWebPart - имя класса веб-части, которое нужно изменить
  • NewProperty / OldProperty - имена свойств, которые нужно изменить
...