Malek's Moorish Tales

Meanderings about life and technology

Créer des Web Parts sous .Net revient à créer un contrôle Web Personnalisé (ou presque ...)

On peut créer des Web Parts de la même manière qu'on crée des contrôles Web personnalisés sous ASP.Net. La seule différence est qu'on utilise la méthode RenderWebPart au lieu de Render.(Ceci permet d'avoir toute la fonctionnalité inhérente aux Web Parts, telle que la possibilité de les glisser d'un emplacement dans la page vers un autre, d'utiliser lee panneaux des outils qui permet de modifier les propriétés...etc.)). exemple en C# (les réferences à Microsoft.SharePoint.dll et à System.Data.dll sont nécessaires):

using System;
using
System.ComponentModel
using
System.Web.UI; using System.Web.UI.WebControls;
using
System.Xml.Serialization;
using
Microsoft.SharePoint;
using
Microsoft.SharePoint.Utilities;
using
Microsoft.SharePoint.WebPartPages;
namespace
MyWebPartsLibrary
{

[ToolboxData("<{0}:WebPart1 runat=server></{0}:WebPart1>"),
XmlRoot(Namespace="MyWebPartsLibrary")]
public class WebPart1 : Microsoft.SharePoint.WebPartPages.WebPart
{

private DataGrid myAuthorsGrid=new DataGrid();
protected override void RenderWebPart(HtmlTextWriter output)
{

myAuthorsGrid.DataSource=getAuthors().Table[0];
myAuthorsGrid.DataBind();
myAuthorsGrid.RenderControl(output);

}
private DataSet getAuthors()
{

System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection("data source=localhost; initial catalog=pubs; integrated security=SSPI");
System.Data.SqlClient.SqlDataAdapter adapt =
new System.Data.SqlClient.SqlDataAdapter("select * from authors", cnn);
System.Data.DataSet result =
new System.Data.DataSet();
adapt.Fill(result);
return result;

}

}

}

Comme pour toute solution Office System, un Manifeste est obligatoire et doit être signé avec un certificat numérique, et il doit référencer la dll comme suit :

<?xml version="1.0"?>

<WebPartManifest xmlns="http://schemas.microsoft.com/WebPart/v2/Manifest">

<Assemblies>

<Assembly FileName="MyWebPartsLibrary.dll">

<SafeControls>

<SafeControl Namespace="MyWebPartsLibrary" TypeName="*" />

</SafeControls>

</Assembly>

</Assemblies>

<DwpFiles>

<DwpFile FileName="WebPart1.dwp"/>

</DwpFiles>

</WebPartManifest>

 

Pour installer le(s) composant Web Part dans SharePoint, un fichier CAB doit être créé (Projet de déploiement) et l'utilitaire stsadmn.exe est utilisé pour l'installation comme suit :

stsadm –o addwppack –MyWebPartLibrary.dll

 

Add comment

biuquote
  • Comment
  • Preview
Loading