Добавление веб-частей в экземпляр страницы на основе макета страницы с использованием компонента - PullRequest
1 голос
/ 27 августа 2009

Я пытаюсь добавить веб-части к экземпляру страницы макета страницы с помощью компонента. Я знаю, что это должно быть через элемент AllUsersWebPart . Я могу найти ссылку на добавление веб-части по умолчанию на страницу Макет ( PortalLayouts функция делает это). Также я видел то же самое в onet.xml . Я хотел знать, возможно ли создать экземпляр страницы на основе макета страницы и добавить к нему веб-часть, используя эту функцию.

1 Ответ

1 голос
/ 31 августа 2009

Внутри обработчика событий активации функции ...

Получить страницу для добавления веб-части (в данном случае - default.aspx)

SPFile thePage = curWeb.RootFolder.Files["default.aspx"];

Получить менеджер веб-частей

//get the web part manager

SPLimitedWebPartManager theMan = thePage.GetLimitedWebPartManager

(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared);

Затем создайте экземпляр веб-части

//add a new ThisWeekInPictures web part

ThisWeekInPicturesWebPart wpPix = new ThisWeekInPicturesWebPart();

wpPix.ImageLibrary = "Shared Pictures";

wpPix.Title = "My Pictures";

Тогда действие Webpart

WebPartAction wpa = new WebPartAction(wpPix, WebPartAction.ActionType.Add,

"MiddleRightZone", 10)

И, наконец, добавить веб-часть ...

theMan.AddWebPart(wpa.wp, wpa.zoneID, wpa.zoneIndex);

И это сделано ... новая веб-часть на нашей странице, я надеюсь, это поможет;)

Для получения дополнительной информации, пожалуйста, проверьте эту статью http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx

...