Поделиться через


Программное использование встроенных диалоговых окон в Word

При работе с Microsoft Office Word иногда требуется отображать диалоговые окна для ввода пользователем. Хотя вы можете создать собственные, вы также можете использовать встроенные диалоговые окна в Word, которые предоставляются в Dialogs коллекции Application объекта. Это позволяет получить доступ к более чем 200 встроенным диалоговым окнам, которые представлены в виде перечислений.

Область применения. Сведения в этом разделе относятся к проектам уровня документа и проектам надстроек VSTO для Word. Дополнительные сведения см. в разделе "Функции", доступные по Приложение Office ликации и типу проекта.

Диалоговое окно отображения

Чтобы отобразить диалоговое окно, используйте одно из значений WdWordDialog перечисления для создания Dialog объекта, представляющего диалоговое окно, которое нужно отобразить. Затем вызовите Show метод Dialog объекта.

В следующем примере кода показано, как отобразить диалоговое окно "Открыть файл". Чтобы использовать этот пример, запустите его из ThisDocument проекта или ThisAddIn класса.

Word.Dialog dlg = Application.Dialogs[Word.WdWordDialog.wdDialogFileOpen];
dlg.Show();

Элементы диалогового окна доступа, доступные через позднюю привязку

Некоторые свойства и методы диалоговых окон в Word доступны только через позднюю привязку. В проектах Visual Basic, где включен параметр Strict , необходимо использовать отражение для доступа к этим членам. Дополнительные сведения см. в статье "Поздняя привязка" в решениях Office.

В следующем примере кода показано, как использовать свойство Name диалогового окна "Открыть файл" в проектах Visual Basic, где параметр Strict отключен или в проектах Visual C#, предназначенных для платформа .NET Framework 4 или платформа .NET Framework 4.5. Чтобы использовать этот пример, запустите его из ThisDocument проекта или ThisAddIn класса.

dynamic dialog = Application.Dialogs[Word.WdWordDialog.wdDialogFileOpen];
dialog.Name = "Testing";
dialog.Show();
MessageBox.Show(dialog.Name);

В следующем примере кода показано, как использовать отражение для доступа к свойству Имени диалогового окна "Открыть файл" в проектах Visual Basic, где включен параметр Strict . Чтобы использовать этот пример, запустите его из ThisDocument проекта или ThisAddIn класса.

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)

' 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))