Upload
enide-dufour
View
104
Download
2
Embed Size (px)
Citation preview
« Les Mercredis du développement »
Les WebParts« Les Mercredis du développement »
Les WebParts
Présenté par Pierre Lagarde
[email protected] 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