Partager via


Volets de tâches personnalisés

Les volets de tâches sont des panneaux d'interface utilisateur généralement ancrés à l'un des côtés d'une fenêtre dans une application Microsoft Office.Les volets de tâches personnalisés vous permettent de créer votre propre volet de tâches et de fournir aux utilisateurs une interface familière pour accéder aux fonctionnalités de la solution.Par exemple, l'interface peut comporter des contrôles exécutant du code pour modifier des documents ou afficher des données à partir d'une source de données.

S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau application pour Outlook 2013 et Outlook 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.

[!REMARQUE]

Les volets de tâches personnalisés sont différents du volet Actions.Le volet Actions fait quant à lui partie des personnalisations au niveau du document pour Microsoft Office Word et Microsoft Office Excel.Pour plus d’informations, consultez Vue d'ensemble du volet Actions.

Avantages des volets de tâches personnalisés

Les volets de tâches personnalisés vous permettent d'intégrer des fonctionnalités personnalisées à une interface utilisateur familière.Vous pouvez créer rapidement un volet de tâches personnalisé à l'aide des outils Visual Studio.

Aa942864.collapse_all(fr-fr,VS.110).gifInterface utilisateur familière

Les utilisateurs des applications de Microsoft Office System ont déjà l'habitude d'utiliser les volets de tâches, comme le volet de tâches Styles et mise en forme de Word.Le comportement des volets de tâches personnalisés est identique à celui des autres volets de tâches de Microsoft Office System.Les utilisateurs peuvent ancrer les volets de tâches personnalisés aux différents côtés de la fenêtre d'application ou les faire glisser n'importe où dans la fenêtre.Vous pouvez créer un complément affichant simultanément plusieurs volets de tâches personnalisés. Les utilisateurs peuvent contrôler chacun de ces volets individuellement.

Aa942864.collapse_all(fr-fr,VS.110).gifPrise en charge des Windows Forms

L'interface utilisateur d'un volet de tâches personnalisé que vous créez à l'aide des outils de développement Office dans Visual Studio est basée sur les contrôles Windows Forms.Le concepteur Windows Forms familier permet de concevoir l'interface utilisateur pour un volet de tâches personnalisé.Vous pouvez également utiliser la prise en charge de liaison de données dans Windows Forms pour effectuer une liaison d'une source de données aux contrôles dans le volet de tâches.

Création d'un volet de tâches personnalisé

Vous pouvez créer un volet de tâches personnalisé de base via les deux étapes suivantes :

  1. Créez une interface utilisateur pour votre volet de tâches personnalisé en ajoutant des contrôles Windows Forms à un objet UserControl.

  2. Instanciez le volet de tâches personnalisé en passant le contrôle utilisateur à l'objet CustomTaskPaneCollection dans votre complément.Cette collection retourne un nouvel objet CustomTaskPane que vous pouvez utiliser pour modifier l'apparence du volet de tâches et répondre aux événements d'utilisateur.

Pour plus d’informations, consultez Comment : ajouter un volet de tâches personnalisé à une application.

Aa942864.collapse_all(fr-fr,VS.110).gifCréation de l'interface utilisateur

Tous les volets de tâches personnalisés créés à l'aide des outils de développement Office dans Visual Studio contiennent un objet UserControl.Ce contrôle utilisateur fournit l'interface utilisateur de votre volet de tâches personnalisé.Vous pouvez créer le contrôle utilisateur au moment du design ou de l'exécution.Si vous créez le contrôle utilisateur au moment du design, vous pouvez utiliser le concepteur Windows Forms pour construire l'interface utilisateur de votre volet de tâches.

Aa942864.collapse_all(fr-fr,VS.110).gifInstanciation du volet de tâches personnalisé

Après avoir créé un contrôle utilisateur contenant l'interface utilisateur du volet de tâches personnalisé, vous devez instancier un CustomTaskPane.Pour ce faire, transférez le contrôle utilisateur à la CustomTaskPaneCollection de votre complément en appelant une des méthodes Add.Cette collection est exposée comme le champ CustomTaskPanes de la classe ThisAddIn.L'exemple de code suivant est destiné à être exécuté depuis la classe ThisAddIn.

myUserControl1 = New MyUserControl
myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "My Task Pane")
myCustomTaskPane.Visible = True
myUserControl1 = new MyUserControl();
myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "My Task Pane");
myCustomTaskPane.Visible = true;

La méthode Add retourne un nouvel objet CustomTaskPane.Cet objet vous permet de modifier l'apparence du volet de tâches et de répondre aux événements utilisateur.

Aa942864.collapse_all(fr-fr,VS.110).gifContrôle du volet de tâches dans plusieurs fenêtres

Les volets de tâches personnalisés sont associés à une fenêtre frame de document, qui présente une vue d'un document ou d'un élément à l'utilisateur.Le volet de tâches n'est visible que lorsque la fenêtre associée est visible.

Pour déterminer quelles sont les fenêtres qui affichent le volet de tâches personnalisé, utilisez la surcharge de méthode Add appropriée lorsque vous créez le volet de tâches :

Certaines applications Office nécessitent des instructions explicites pour connaître le moment auquel créer ou afficher votre volet de tâches, lorsque plusieurs fenêtres sont ouvertes.Il est donc important de se demander où instancier le volet de tâches personnalisé dans votre code afin de vous assurer que le volet apparaîtra avec les documents et éléments appropriés dans l'application.Pour plus d'informations, consultez Gérer les volets de tâches personnalisés dans les applications windows.

Accès à l'application depuis le volet de tâches

Pour automatiser l'application à partir du contrôle utilisateur, vous pouvez directement accéder au modèle objet à l'aide de la classe Globals.ThisAddIn.Application de votre code.La classe Globals statique permet d'accéder à l'objet ThisAddIn.Le champ Application de cet objet est le point d'entrée dans le modèle objet de l'application.

Pour plus d'informations sur le champ Application de l'objet ThisAddIn, consultez Programmation de compléments d'application.Pour une procédure pas à pas montrant comment automatiser une application à partir d'un volet de tâches personnalisé, consultez Procédure pas à pas : automatisation d'une application à partir d'un volet de tâches personnalisé.Pour plus d'informations sur la classe Globals, consultez Accès global aux objets dans les projets Office.

Gestion de l'interface utilisateur du volet de tâches

Après avoir créé le volet de tâches, vous pouvez utiliser les propriétés et événements de l'objet CustomTaskPane pour contrôler l'interface utilisateur du volet et répondre quand l'utilisateur modifie le volet de tâches.

Aa942864.collapse_all(fr-fr,VS.110).gifAffichage du volet de tâches personnalisé

Par défaut, le volet de tâches n'est pas visible.Pour qu'il soit visible, vous devez affecter la valeur true à la propriété Visible.

Les utilisateurs peuvent à tout moment fermer un volet de tâches en cliquant sur le bouton Fermer (X) situé dans le coin du volet.Toutefois, il n'existe aucune manière par défaut permettant de le rouvrir.Si un utilisateur ferme un volet de tâches personnalisé, il ne peut pas l'afficher de nouveau sauf si vous lui permettez de le faire.

Si vous créez un volet de tâches personnalisé dans votre complément, vous devez également créer un élément d'interface utilisateur, tel qu'un bouton, sur lequel les utilisateurs peuvent cliquer pour afficher ou masquer votre volet de tâches personnalisé.Si vous créez un volet de tâches personnalisé dans une application Microsoft Office prenant en charge la personnalisation du ruban, vous pouvez ajouter un groupe de contrôles au ruban à l'aide d'un bouton permettant d'afficher ou de masquer votre volet de tâches personnalisé.Pour obtenir une procédure pas à pas illustrant ce processus, consultez Procédure pas à pas : synchronisation d'un volet de tâches personnalisé avec un bouton dans le ruban.

Si vous créez un volet de tâches personnalisé dans une application Microsoft Office qui ne prend en charge la personnalisation du ruban, vous pouvez ajouter un CommandBarButton qui permet d'afficher ou de masquer votre volet de tâches personnalisé.

Aa942864.collapse_all(fr-fr,VS.110).gifModification de l'apparence du volet de tâches

Vous pouvez contrôler la taille et l'emplacement d'un volet de tâches personnalisé à l'aide des propriétés de l'objet CustomTaskPane.Vous pouvez apporter de nombreuses autres modifications à l'apparence d'un volet de tâches personnalisé à l'aide des propriétés de l'objet UserControl présent dans le volet de tâches personnalisé.Par exemple, vous pouvez spécifier une image d'arrière-plan pour un volet de tâches personnalisé à l'aide de la propriété BackgroundImage du contrôle utilisateur.

Le tableau suivant répertorie les modifications que vous pouvez apporter à un volet de tâches personnalisé à l'aide des propriétés CustomTaskPane.

Tâche

Propriété

Pour changer la taille du volet de tâches

Height

Width

Pour changer l'emplacement du volet de tâches

DockPosition

Pour masquer ou afficher le volet de tâches

Visible

Pour empêcher l'utilisateur de modifier l'emplacement du volet de tâches

DockPositionRestrict

Aa942864.collapse_all(fr-fr,VS.110).gifProgrammation des événements d'un volet de tâches personnalisé

Vous souhaitez que votre complément réponde à toute modification de l'utilisateur dans le volet de tâches personnalisé.Par exemple, si l'utilisateur remplace l'orientation verticale du volet par une orientation horizontale, vous souhaitez repositionner les contrôles.

Le tableau suivant répertorie les événements que vous pouvez traiter pour répondre aux modifications apportées par l'utilisateur dans le volet de tâches personnalisé.

Tâche

Événement

Pour répondre lorsque l'utilisateur modifie l'emplacement du volet de tâches

DockPositionChanged

Pour répondre lorsque l'utilisateur affiche ou masque le volet de tâches

VisibleChanged

Nettoyage des ressources utilisées par le volet de tâches

Une fois un volet de tâches personnalisé créé, l'objet CustomTaskPane reste en mémoire aussi longtemps que votre complément fonctionne.L'objet reste encore en mémoire lorsque l'utilisateur a cliqué sur le bouton Fermer (X) situé dans le volet de tâches.

Pour nettoyer des ressources utilisées par le volet de tâches pendant que le complément s'exécute, utilisez les méthodes Remove ou RemoveAt.Ces méthodes suppriment l'objet CustomTaskPane spécifié de la collection CustomTaskPanes, et appellent la méthode Dispose de l'objet.

Le Visual Studio Tools pour Office Runtime nettoie automatiquement les ressources utilisées par le volet de tâches personnalisé lorsque le complément est déchargé.N'appelez pas les méthodes Remove ou RemoveAt dans le gestionnaire d'événements ThisAddIn_Shutdown dans votre projet.Ces méthodes lèveront une ObjectDisposedException car le Visual Studio Tools pour Office Runtime nettoie les ressources utilisées par l'objet CustomTaskPane avant que ThisAddIn_Shutdown ne soit appelé.Pour plus d'informations sur ThisAddIn_Shutdown, consultez Événements dans les projets Office.

Gérer les volets de tâches personnalisés dans plusieurs applications windows

Lorsque vous créez un volet de tâches personnalisé dans une application qui utilise plusieurs fenêtres pour afficher des documents et d'autres éléments, vous devez prendre des mesures supplémentaires afin de garantir l'affichage du volet de tâches lorsque l'utilisateur attend qu'il le soit.

Les volets de tâches personnalisés de toutes les applications sont associés à une fenêtre frame de document, qui présente une vue d'un document ou élément à l'utilisateur.Le volet de tâches n'est visible que lorsque la fenêtre associée est visible.Toutes les applications n'utilisent cependant pas les fenêtres frame de document de la même façon.

Les groupes d'applications suivants ont des exigences différentes en termes de développement :

  • Outlook

  • Word, InfoPath et PowerPoint,

lien vers la vidéo Pour une démonstration vidéo connexe, consultez Comment faire pour gérer les volets de tâches dans les compléments Word ? (page éventuellement en anglais).

Outlook

Lorsque vous créez un volet de tâches personnalisé pour Outlook, celui-ci est associé à une fenêtre Explorateur ou Inspecteur spécifique.Les fenêtres Explorateur affichent le contenu d'un dossier, tandis que les fenêtres Inspecteur affichent un élément tel qu'un message électronique ou une tâche.

Pour afficher un volet de tâches personnalisé avec plusieurs fenêtres Explorateur ou Inspecteur, vous devez créer une nouvelle instance de ce volet lorsqu'une fenêtre Explorateur ou Inspecteur apparaît.Pour cela, gérez un événement qui se déclenche lorsqu'une fenêtre Explorateur ou Inspecteur est créée, puis créez le volet de tâches dans le gestionnaire d'événements.Vous pouvez également gérer des événements Explorateur et Inspecteur pour masquer ou afficher des volets de tâches en fonction de la fenêtre visible.

Pour associer le volet de tâches à un Explorateur ou un Inspecteur spécifique, utilisez la méthode CustomTaskPaneCollection.Add(UserControl, String, Object) pour créer le volet de tâches, puis passez l'objet Explorer ou Inspector au paramètre window.Pour plus d'informations sur la création de volets de tâches personnalisés, consultez Volets de tâches personnalisés.

Pour une procédure pas à pas expliquant comment créer un volet de tâches pour chaque message électronique ouvert, consultez Procédure pas à pas : affichage de volets de tâches personnalisés avec des messages électroniques dans Outlook.

Aa942864.collapse_all(fr-fr,VS.110).gifÉvénements Outlook

Pour analyser l'état des fenêtres Explorateur, vous pouvez gérer les événements Explorateur suivants :

Pour analyser l'état des fenêtres Inspecteur, vous pouvez gérer les événements Inspecteur suivants :

Aa942864.collapse_all(fr-fr,VS.110).gifEmpêcher plusieurs instances d'un volet de tâches personnalisé dans Outlook

Pour éviter que les fenêtres Outlook affichent plusieurs instances d'un volet de tâches personnalisé, supprimez explicitement le volet de tâches personnalisé de la collection CustomTaskPanes de la classe ThisAddIn lors de la fermeture de chaque fenêtre.Appelez la méthode Remove dans un événement qui est déclenché lorsqu'une fenêtre est fermée, tel que ExplorerEvents_10_Event.Close ou InspectorEvents_10_Event.Close.

Si vous ne supprimez pas explicitement le volet de tâches personnalisé, les fenêtres Outlook risquent d'afficher plusieurs instances de ce volet.Parfois, Outlook recycle des fenêtres, et ces fenêtres recyclées conservent des références à tout volet de tâches personnalisé qui pouvait leur être associé.

Word, InfoPath et PowerPoint,

Affichage de Word, InfoPath et PowerPoint, chaque document dans une fenêtre frame de document différente.Lorsque vous créez un volet de tâches personnalisé pour ces applications, celui-ci est associé à un document spécifique uniquement.Si l'utilisateur ouvre un document différent, le volet de tâches personnalisé est masqué jusqu'à ce que le document antérieur soit à nouveau visible.

Pour afficher un volet de tâches personnalisé avec plusieurs documents, créez une nouvelle instance de ce volet lorsque l'utilisateur crée un document ou ouvre un document existant.Pour ce faire, gérez des événements qui se déclenchent lorsqu'un document est créé ou ouvert, puis créez le volet de tâches dans les gestionnaires d'événements.Vous pouvez également gérer des événements de document pour masquer ou afficher des volets de tâches en fonction du document visible.

Pour associer le volet de tâches à une fenêtre de document spécifique, utilisez la méthode d' CustomTaskPaneCollection.Add(UserControl, String, Object) pour créer le volet de tâches, puis passez Microsoft.Office.Interop.Word.Window (pour Word), Microsoft.Office.Interop.InfoPath.WindowObject (pour InfoPath), ou Microsoft.Office.Interop.PowerPoint.DocumentWindow (pour PowerPoint) au paramètre d' window .

Aa942864.collapse_all(fr-fr,VS.110).gifÉvénements Word

Vous pouvez gérer les événements suivants pour surveiller l'état de fenêtres de document dans Word :

Aa942864.collapse_all(fr-fr,VS.110).gifÉvénements InfoPath

Vous pouvez gérer les événements suivants pour surveiller l'état de fenêtres de document dans InfoPath :

Aa942864.collapse_all(fr-fr,VS.110).gifÉvénements PowerPoint

Pour surveiller l'état des fenêtres de document dans PowerPoint, vous pouvez gérer les événements suivants :

Voir aussi

Tâches

Comment : ajouter un volet de tâches personnalisé à une application

Procédure pas à pas : automatisation d'une application à partir d'un volet de tâches personnalisé

Procédure pas à pas : synchronisation d'un volet de tâches personnalisé avec un bouton dans le ruban

Procédure pas à pas : affichage de volets de tâches personnalisés avec des messages électroniques dans Outlook