Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Lorsque vous étendez une application Microsoft Office en créant un complément VSTO, vous écrivez du code directement sur la ThisAddIn classe de votre projet. Vous pouvez utiliser cette classe pour effectuer des tâches telles que l’accès au modèle objet de l’application hôte Microsoft Office, la personnalisation de l’interface utilisateur de l’application et l’exposition d’objets dans votre complément VSTO à d’autres solutions Office.
S’applique à : Les informations contenues dans cette rubrique s’appliquent aux projets de complément VSTO. Pour plus d’informations, consultez Fonctionnalités disponibles par type d’application et de projet Office.
Certains aspects de l’écriture de code dans les projets de complément VSTO diffèrent d’autres types de projets dans Visual Studio. La plupart de ces différences sont causées par la façon dont les modèles objet Office sont exposés au code managé. Pour plus d’informations, consultez Écrire du code dans les solutions Office.
Pour obtenir des informations générales sur les compléments VSTO et d’autres types de solutions que vous pouvez créer à l’aide des outils de développement Office dans Visual Studio, consultez la vue d’ensemble du développement de solutions Office (VSTO).
Utiliser la classe ThisAddIn
Vous pouvez commencer à écrire votre code de complément VSTO dans la ThisAddIn classe. Visual Studio génère automatiquement cette classe dans le fichier de code ThisAddIn.vb (en Visual Basic) ou ThisAddIn.cs (en C#) dans votre projet de complément VSTO. Visual Studio Tools pour Office runtime instancie automatiquement cette classe lorsque l’application Microsoft Office charge votre complément VSTO.
Il existe deux gestionnaires d’événements par défaut dans la ThisAddIn classe. Pour exécuter du code lorsque le complément VSTO est chargé, ajoutez du code au ThisAddIn_Startup gestionnaire d’événements. Pour exécuter du code juste avant le déchargement du complément VSTO, ajoutez du code au ThisAddIn_Shutdown gestionnaire d’événements. Pour plus d’informations sur ces gestionnaires d’événements, consultez Événements dans les projets Office.
Note
Dans Outlook, par défaut, le ThisAddIn_Shutdown gestionnaire d’événements n’est pas toujours appelé lorsque le complément VSTO est déchargé. Pour plus d’informations, consultez Événements dans les projets Office.
Accéder au modèle objet de l’application hôte
Pour accéder au modèle objet de l’application hôte, utilisez le Application champ de la ThisAddIn classe. Ce champ retourne un objet qui représente l’instance actuelle de l’application hôte. Le tableau suivant répertorie le type de la valeur de retour du Application champ dans chaque projet de complément VSTO.
| Application hôte | Type de valeur de retour |
|---|---|
| Microsoft Office Excel | Application |
| Microsoft Office InfoPath | Application |
| Microsoft Office Outlook | Application |
| Microsoft Office PowerPoint | Application |
| Microsoft Office Project | Microsoft.Office.Interop.MSProject.Application |
| Microsoft Office Visio | Microsoft.Office.Interop.Visio.Application |
| Microsoft Office Word | Application |
L’exemple de code suivant montre comment utiliser le Application champ pour créer un classeur dans un complément VSTO pour Microsoft Office Excel. Cet exemple est destiné à être exécuté à partir de la ThisAddIn classe.
Pour faire la même chose en dehors de la ThisAddIn classe, utilisez l’objet Globals pour accéder à la ThisAddIn classe. Pour plus d’informations sur l’objet Globals , consultez l’accès global aux objets dans les projets Office.
Excel.Workbook newWorkbook = Globals.ThisAddIn.Application.Workbooks.Add(System.Type.Missing);
Pour plus d’informations sur les modèles objet d’applications Microsoft Office spécifiques, consultez les rubriques suivantes :
Accéder à un document au démarrage de l’application Office
Toutes les applications Office 2010 n’ouvrent pas automatiquement un document lorsque vous les démarrez, et aucune des applications Office 2013 n’ouvre un document lorsque vous les démarrez. Par conséquent, n’ajoutez pas de code dans le ThisAdd-In_Startup gestionnaire d’événements si le code nécessite l’ouverture d’un document. Ajoutez plutôt ce code à un événement que l’application Office déclenche lorsqu’un utilisateur crée ou ouvre un document. De cette façon, vous pouvez garantir qu’un document est ouvert avant que votre code n’effectue des opérations dessus.
L’exemple de code suivant fonctionne avec un document dans Word uniquement lorsque l’utilisateur crée un document ou ouvre un document existant.
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.DocumentOpen +=
new Word.ApplicationEvents4_DocumentOpenEventHandler(WorkWithDocument);
((Word.ApplicationEvents4_Event)this.Application).NewDocument +=
new Word.ApplicationEvents4_NewDocumentEventHandler(WorkWithDocument);
}
private void WorkWithDocument(Microsoft.Office.Interop.Word.Document Doc)
{
try
{
Word.Range rng = Doc.Range(0, 0);
rng.Text = "New Text";
rng.Select();
}
catch (Exception ex)
{
// Handle exception if for some reason the document is not available.
}
}
Membres de ThisAddIn à utiliser pour d’autres tâches
Le tableau suivant décrit d’autres tâches courantes et indique les membres de la ThisAddIn classe que vous pouvez utiliser pour effectuer les tâches.
| Tâche | Membre à utiliser |
|---|---|
| Exécutez du code pour initialiser le complément VSTO lorsque le complément VSTO est chargé. | Ajoutez du code à la ThisAddIn_Startup méthode. Il s’agit du gestionnaire d’événements par défaut pour l’événement Startup . Pour plus d’informations, consultez Événements dans les projets Office. |
| Exécutez du code pour nettoyer les ressources utilisées par le complément VSTO avant le déchargement du complément VSTO. | Ajoutez du code à la ThisAddIn_Shutdown méthode. Il s’agit du gestionnaire d’événements par défaut pour l’événement Shutdown . Pour plus d’informations, consultez Événements dans les projets Office.
Note: Dans Outlook, par défaut, le ThisAddIn_Shutdown gestionnaire d’événements n’est pas toujours appelé lorsque le complément VSTO est déchargé. Pour plus d’informations, consultez Événements dans les projets Office. |
| Afficher un volet Office personnalisé. | Utilisez le CustomTaskPanes champ. Pour plus d’informations, consultez les volets de tâches personnalisés. |
| Exposer des objets dans votre complément VSTO à d’autres solutions Microsoft Office. | Remplacez la RequestComAddInAutomationService méthode. Pour plus d’informations, consultez Appeler du code dans les compléments VSTO à partir d’autres solutions Office. |
| Personnalisez une fonctionnalité dans le système Microsoft Office en implémentant une interface d’extensibilité. | Remplacez la RequestService méthode pour retourner une instance d’une classe qui implémente l’interface. Pour plus d’informations, consultez Personnaliser les fonctionnalités de l’interface utilisateur à l’aide d’interfaces d’extensibilité. Note: Pour personnaliser l’interface utilisateur du ruban, vous pouvez également remplacer la CreateRibbonExtensibilityObject méthode. |
Comprendre la conception de la classe ThisAddIn
Dans les projets qui ciblent .NET Framework 4, AddIn est une interface. La ThisAddIn classe dérive de la AddInBase classe. Cette classe de base redirige tous les appels vers ses membres vers une implémentation interne de l’interface AddIn dans visual Studio Tools pour Office runtime .
Dans les projets de complément VSTO pour Outlook, la ThisAddIn classe dérive de la Microsoft.Office.Tools.Outlook.OutlookAddIn classe dans les projets qui ciblent .NET Framework 3.5 et de la classe OutlookAddInBase dans les projets qui ciblent .NET Framework 4. Ces classes de base fournissent des fonctionnalités supplémentaires pour prendre en charge les zones de formulaire. Pour plus d’informations sur les zones de formulaire, consultez Créer des zones de formulaire Outlook.
Personnaliser l’interface utilisateur des applications Microsoft Office
Vous pouvez personnaliser par programmation l’interface utilisateur des applications Microsoft Office à l’aide d’un complément VSTO. Par exemple, vous pouvez personnaliser le ruban, afficher un volet Office personnalisé ou créer une zone de formulaire personnalisée dans Outlook. Pour plus d’informations, consultez Personnalisation de l’interface utilisateur d’Office.
Visual Studio fournit des concepteurs et des classes que vous pouvez utiliser pour créer des volets Office personnalisés, des personnalisations du ruban et des zones de formulaire Outlook. Ces concepteurs et classes permettent de simplifier le processus de personnalisation de ces fonctionnalités. Pour plus d’informations, consultez volets Office personnalisés, Concepteur de ruban et Créer des zones de formulaire Outlook.
Si vous souhaitez personnaliser l’une de ces fonctionnalités d’une manière qui n’est pas prise en charge par les classes et les concepteurs, vous pouvez également personnaliser ces fonctionnalités en implémentant une interface d’extensibilité dans votre complément VSTO. Pour plus d’informations, consultez Personnaliser les fonctionnalités de l’interface utilisateur à l’aide d’interfaces d’extensibilité.
En outre, vous pouvez modifier l’interface utilisateur des documents Word et des classeurs Excel en générant des éléments hôtes qui étendent le comportement des documents et des classeurs. Cela vous permet d’ajouter des contrôles managés à des documents et des feuilles de calcul. Pour plus d’informations, consultez Étendre les documents Word et les classeurs Excel dans les compléments VSTO au moment de l’exécution.
Appeler du code dans des compléments VSTO à partir d’autres solutions
Vous pouvez exposer des objets dans votre complément VSTO à d’autres solutions, y compris d’autres solutions Office. Cela est utile si votre complément VSTO fournit un service que vous souhaitez utiliser pour d’autres solutions. Par exemple, si vous disposez d’un complément VSTO pour Microsoft Office Excel qui effectue des calculs sur les données financières d’un service web, d’autres solutions peuvent effectuer ces calculs en appelant le complément VSTO Excel au moment de l’exécution.
Pour plus d’informations, consultez Appeler du code dans les compléments VSTO à partir d’autres solutions Office.
Contenu connexe
- Développer des solutions Office
- Étendre les documents Word et les classeurs Excel dans les compléments VSTO pendant l'exécution
- Appeler du code dans des compléments VSTO à partir d’autres solutions Office
- Procédure pas à pas : appeler du code dans un complément VSTO à partir de VBA
- Personnaliser les fonctionnalités de l’interface utilisateur à l’aide d’interfaces d’extensibilité
- Guide pratique pour créer des projets Office dans Visual Studio
- Architecture des compléments VSTO
- Écrire du code dans les solutions Office