2009-10-08 8 views
0

Dans le code behind d'une page.SharePoint: ajouter des propriétés à une partie Web à partir du code

Comment puis-je obtenir une partie Web existante sur la page, puis ajouter des propriétés à cette partie Web en utilisant C#.

La partie Web existe avec une zone WebPartzone.

Ai-je besoin de faire quoi que ce soit avec SPWebPartManager?

+0

Vous n'avez pas besoin de le jeter en utilisant comme vous l'avez déjà fait en utilisant "Using"; –

Répondre

2

Utilisez SPWeb.GetLimitedWebPartManager. L'exemple suivant illustre la mise à jour d'une propriété dans une vue liste de la partie Web:

using (SPLimitedWebPartManager webPartManager = 
    SPContext.Current.Web.GetLimitedWebPartManager("default.aspx", 
     PersonalizationScope.Shared)) 
{ 
    try 
    { 
     foreach (WebPart webPart in webPartManager.WebParts) 
     { 
      if (webPart.Title == "Web Part To Update") 
      { 
       ListViewWebPart listViewWebPart = (ListViewWebPart)webPart; 
       // TODO: Set property on web part 
       webPartManager.SaveChanges(listViewWebPart); 
       break; 
      } 
     } 
    } 
    finally 
    { 
     webPartManager.Web.Dispose(); 
    } 
} 

Au lieu de default.aspx vous devez utiliser le nom de la page en cours par rapport à la SPWeb.

+0

merci pour cela, comment puis-je faire le réglage d'un bit de propriété? par exemple dans un fichier .webpart exporté j'ai cette propriété ... comment puis-je définir cela? /fr – raklos

+0

aucun problème trouvé. merci – raklos

+0

Oui, comme vous l'auriez vu, il est juste défini comme toute autre propriété sur une classe. –

Questions connexes