Partager via


Comment : utiliser les boîtes de dialogue intégrées dans Word

Mise à jour : novembre 2007

S'applique à

Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés.

Type de projet

  • Projets au niveau du document

  • Projets au niveau de l'application

Version de Microsoft Office

  • Word 2003

  • Word 2007

Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet.

Lorsque vous utilisez Microsoft Office Word, vous devez parfois afficher des boîtes de dialogue pour permettre la saisie de données par vos utilisateurs. Vous pouvez choisir de créer vos propres boîtes de dialogue ou d'utiliser celles qui sont intégrées dans Word et exposées dans la collection Dialogs de l'objet Application. Cela vous permet d'accéder à plus de 200 boîtes de dialogue intégrées, représentées comme des énumérations.

Pour utiliser une boîte de dialogue intégrée

  1. Utilisez l'une des valeurs de l'énumération WdWordDialog pour créer un objet Dialog qui représente la boîte de dialogue Word à afficher. Pour utiliser l'exemple de code suivant, exécutez-le dans votre projet à partir de la classe ThisDocument ou ThisAddIn.

    Dim dlg As Word.Dialog = Application.Dialogs.Item(Word.WdWordDialog.wdDialogFileNew)
    
    Word.Dialog dlg = Application.Dialogs[Word.WdWordDialog.wdDialogFileNew];
    
  2. Après avoir créé la variable Dialog, vous pouvez appeler les méthodes correspondantes.

    dlg.Show()
    
    object timeOut = 0;
    dlg.Show(ref timeOut);
    

Pour accéder aux membres de la boîte de dialogue

  1. Obtenez le type de boîte de dialogue et attribuez à la propriété Name la valeur Testing. Pour utiliser l'exemple de code suivant, exécutez-le dans votre projet à partir de la classe ThisDocument ou ThisAddIn.

    Remarque :

    Les interactions avec les boîtes de dialogue Word intégrées s'effectuent par liaison tardive. Si vous affectez à Option Strict la valeur On ou que vous utilisez C#, vous ne pouvez pas accéder directement aux membres des boîtes de dialogue. Vous devez utiliser les bibliothèques Reflection pour y accéder.

    Dim dlg As Word.Dialog = Application.Dialogs(Word.WdWordDialog.wdDialogFileOpen)
    Dim dlgType As Type = GetType(Word.Dialog)
    
    ' Set the Name property of the dialog box.
    dlgType.InvokeMember("Name", _
        Reflection.BindingFlags.SetProperty Or _
            Reflection.BindingFlags.Public Or _
            Reflection.BindingFlags.Instance, _
        Nothing, dlg, New Object() {"Testing"}, _
        System.Globalization.CultureInfo.InvariantCulture)
    
    Word.Dialog dlg = Application.Dialogs[Word.WdWordDialog.wdDialogFileOpen];
    System.Type dlgType = typeof(Word.Dialog);
    
    // Set the Name property of the dialog box.
    dlgType.InvokeMember("Name", 
        System.Reflection.BindingFlags.SetProperty | 
            System.Reflection.BindingFlags.Public | 
            System.Reflection.BindingFlags.Instance,
        null, dlg, new object[] {"Testing"},
        System.Globalization.CultureInfo.InvariantCulture);
    
  2. Affichez la boîte de dialogue, puis affichez la propriété Name dans un message.

    ' Display the dialog box.
    dlg.Show()
    
    ' Show the Name property.
    MessageBox.Show(dlgType.InvokeMember("Name", _
        Reflection.BindingFlags.GetProperty Or _
            Reflection.BindingFlags.Public Or _
            Reflection.BindingFlags.Instance, _
        Nothing, dlg, Nothing, _
        System.Globalization.CultureInfo.InvariantCulture))
    
    // Display the dialog box.
    dlg.Show(ref missing); 
    
    // Show the Name property.
    MessageBox.Show(dlgType.InvokeMember("Name",
        System.Reflection.BindingFlags.GetProperty |
            System.Reflection.BindingFlags.Public |
            System.Reflection.BindingFlags.Instance,
        null, dlg, null,
        System.Globalization.CultureInfo.InvariantCulture).ToString());
    

Voir aussi

Tâches

Comment : utiliser des boîtes de dialogue Word en mode masqué

Concepts

Vue d'ensemble du modèle objet Word

Fonctionnement des paramètres optionnels dans les solutions Office