« Les Mercredis du développement » Les WebParts Présenté par Pierre Lagarde...

Preview:

Citation preview

« Les Mercredis du développement »

Les WebParts« Les Mercredis du développement »

Les WebParts

Présenté par Pierre Lagarde

pierlag@microsoft.comRelation Développeurs

Microsoft France

Level 300Level 300

Les Web Parts en ASP.NET v2 Les Web Parts en ASP.NET v2

Framework de construction de portalFramework de construction de portalMoteur de rendu de Windows SharePoint Moteur de rendu de Windows SharePoint ServiceService

System.Web.UI.WebControls.WebPartsSystem.Web.UI.WebControls.WebParts

Interface utilisateur très richeInterface utilisateur très richeConstruction du portail en drag-and-dropConstruction du portail en drag-and-drop

Édition des propriétésÉdition des propriétés

Intégration de la personnalisationIntégration de la personnalisation

Connexion entre WebPartConnexion entre WebPart

1: Première page de WebPart1: Première page de WebPart

demodemo

WebParts Object-ModelWebParts Object-Model

WebPartManager

WebPart

GenericWebPart

CustomWebPart

WebZone WebPartZoneBase

ToolZone

WebPartZone

CatalogZone

EditorZone

ConnectionsZone

UserControl.Parent

Personnalisation APIPersonnalisation API

WebPartManager.PersonalizationWebPartManager.Personalization

Tache disponibleTache disponibleEffacer la personnalisationEffacer la personnalisation

Vérifier la configurationVérifier la configuration

Personnalisation APIPersonnalisation API

WebPart ProviderWebPart ProviderDans le fichier web.config dans la section Dans le fichier web.config dans la section <webParts><webParts>

Brancher son propre providerBrancher son propre provider<webParts> <personalization defaultProvider="MyProvider"> <authorization> <allow roles="BUILTIN\Administrators"/> <deny roles="BUILTIN\Guests" /> </authorization> <providers> <add name="MyProvider" type="System.Web.UI.WebControls.WebParts.SqlPersonalizationProvider" connectionStringName="CustomSqlConnection" /> </providers> </personalization></webParts>

WebParts de l’ « Editor Zone »WebParts de l’ « Editor Zone »

<asp:EditorZone ID="EditorZone1" Runat="server"> <ZoneTemplate> <asp:AppearanceEditorPart ID=“AppearEdit" Runat="server" /> <asp:BehaviorEditorPart ID=“BehaveEdit" Runat="server" /> <asp:LayoutEditorPart ID=“LayoutEdit" Runat="server" /> </ZoneTemplate></asp:EditorZone>

Customisation des WebPartsCustomisation des WebParts

Propriété disponible par l’éditeur de Propriété disponible par l’éditeur de propriété standard (Sauvegardé dans le propriété standard (Sauvegardé dans le moteur de personnalisation)moteur de personnalisation)

[WebBrowsable(true)][WebBrowsable(true)]

[Personalizable(PersonalizationScope.User)][Personalizable(PersonalizationScope.User)]

Accès au propriétés standard d’une WebPartAccès au propriétés standard d’une WebPartIWebPartIWebPart

Customiser un éditeur de propriétéCustomiser un éditeur de propriétéIWebEditableIWebEditable

Customiser sont menucontextuelCustomiser sont menucontextuelIWebActionableIWebActionable

Customisation des WebParts (suite)Customisation des WebParts (suite)

Connexion entre WebPartConnexion entre WebPart

public interface IWebPartConnector{

string Name{get;}}

public partial class MyUc : UserControl, IWebPartConnector{ …[ConnectionProvider(“Server WebConnector", "MyProviderID")]

public IWebPartConnector GetWebPartForConnection(){ return this;}

}public partial class MyUc2 : UserControl{ …[ConnectionConsumer("Client WebConnector", "MyConsumerID")]

public void InitProvider(IWebPartConnector provider){

_webPartConnector = provider;}

}

2 : Un UserControlPersonnalisableParamétrableExtension de son menu contextuelAjout d’un éditeur de propriétés personnaliséConnecté

2 : Un UserControlPersonnalisableParamétrableExtension de son menu contextuelAjout d’un éditeur de propriétés personnaliséConnecté

demodemo

Recommended