Bonjour,
J'ai un petit souci pour ajouter une WebPart sur ma page via code behind..
Voici le topo.
J'ai un projet SharePoint 2010, dans lequel j'ai ajouté un module, et à ce module j'ai ajouté une page.
C'est sur cette page que j'aimerais ajouter une WebPart (via code behind ou dans l'aspx, peu m'importe pour le moment, mais si j'arrive en code behind c'est mieux!).
Voici ce que j'ai comme code qui devrait permettre d'ajouter la WebPart :
Code que j'ai trouvé ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { AddWebPartToPage("http://dev-sps1/", "/_FEATURES/DefaultPage_DefaultPage/CustomPages/HomePage.aspx"); } } public static void AddWebPartToPage(string siteURL, string pageRelativeUrl) { using (SPSite site = new SPSite(siteURL)) { SPWeb web = site.RootWeb; web.AllowUnsafeUpdates = true; SPFile page = web.GetFile(pageRelativeUrl); page.CheckOut(); using (SPLimitedWebPartManager wpmgr = page.GetLimitedWebPartManager(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared)) { XmlElement p = new XmlDocument().CreateElement("p"); p.InnerText = "Hello World : my custom webPart"; ContentEditorWebPart cewp = new ContentEditorWebPart(); cewp.Content = p; wpmgr.AddWebPart(cewp, "Header", 0); } page.CheckIn(String.Empty); } }
Add WebPart programmatically
Résultat:
Tout fonctionne... Mais je ne vois pas de WebPart sur ma page.
Quelqu'un aurait-il une idée?!
Merci d'avance.
Partager