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


Практическое руководство. Добавление закладок в документы Word

Обновлен: Июль 2008

Применение

Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office.

Проекты уровня документа

  • Word 2007

  • Word 2003

Проекты уровня приложения

  • Word 2007

Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов.

В проектах уровня документа можно добавлять элементы управления Bookmark в документ проекта во время разработки или во время выполнения. Начиная с Visual Studio 2008 с пакетом обновления 1 (SP 1), можно также добавлять элементы управления Bookmark в любой открытый документ во время выполнения, используя надстройку уровня приложения для Word 2007.

В этом разделе описаны следующие задачи:

  • Добавление элементов управления Bookmark во время разработки

  • Добавление элементов управления Boomark во время выполнения в проектах уровня документа

  • Добавление элементов управления Bookmark во время выполнения в проектах уровня приложения

Дополнительные сведения об элементах управления Bookmark см. в разделе Элементы управления Bookmark.

Добавление элементов управления Bookmark во время разработки

Существует несколько способов добавления элементов управления Bookmark в документ в проекте уровня документа во время разработки:

  • Из Панели элементов Visual Studio.

    Можно перетащить элемент управления Bookmark с Панели элементов в документ. Этот способ удобен при использовании Панели элементов для добавления в документ элементов управления формы Windows Forms.

  • Из приложения Word.

    Добавить в документ элемент управления Bookmark можно тем же самым способом, что и обычную закладку. Преимущество этого способа заключается в том, что имя элементу управления можно присвоить во время его создания.

  • Из окна Источники данных.

    Перетащить в документ элемент управления Bookmark можно из окна Источники данных. Это удобно, если необходимо одновременно привязать элемент управления к данным. Ведущий элемент управления можно добавить тем же способом, что и элемент управления форм Windows Forms из окна Источники данных. Дополнительные сведения см. в разделе Связывание данных и Windows Forms.

5eef9s6f.alert_note(ru-ru,VS.90).gifПримечание.

На вашем компьютере названия некоторых элементов интерфейса пользователя Visual Studio или их расположение могут отличаться от указанных в нижеследующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Параметры Visual Studio.

Добавление элемента управления Bookmark с панели элементов в документ

  1. Откройте Панель элементов, после чего откройте вкладку Элементы управления Word.

  2. Перетащите в документ элемент управления Bookmark.

    Откроется диалоговое окно Добавление закладки.

  3. Выделите текст и иные элементы, которые требуется включить в закладку.

  4. Нажмите кнопку ОК.

    Если необходимо присвоить закладке имя, отличное от имени по умолчанию, измените его в окне Свойства.

Добавление в документ Word элемент управления Bookmark

  1. В документе, который размещен в конструкторе Visual Studio, установите курсор там, куда Вы хотите добавить элемент управления Bookmark, или выделите текст, который Вы хотите включить в закладку.

  2. Выполните одно из следующих действий:

    • Для Word 2003: в меню Вставка выберите пункт Закладка.

    • Для Word 2007: на вкладке Вставка на ленте, в группе Связи нажмите кнопку Закладка.

  3. В диалоговом окне Закладка введите имя новой закладки и выберите команду Добавить.

Добавление элементов управления Boomark во время выполнения в проектах уровня документа

Можно программно добавить в документ элемент управления Bookmark во время выполнения при помощи методов свойства Controls класса ThisDocument в проекте. Каждый метод имеет две перегрузки, что позволяет добавлять элемент управления Bookmark следующими способами:

  • Добавить Bookmark в заданном диапазоне.

  • Добавить элемент управления Bookmark, основанный на собственной закладке в документе (то есть, Microsoft.Office.Interop.Word.Bookmark).

Динамически созданные элементы управления Bookmark не сохраняются в документе при его закрытии. Тем не менее, в документе остается собственная закладка Microsoft.Office.Interop.Word.Bookmark. Можно повторно создать элемент управления Bookmark, основанный на собственной закладке, при следующем открытии документа. Дополнительные сведения см. в разделе Добавление элементов управления в документы Office во время выполнения.

Добавление элемента управления Bookmark в документ программным способом

  • Чтобы добавить элемент управления Bookmark в первый абзац документа, вставьте в обработчик событий ThisDocument_Startup в проекте приведенный ниже код.

    Dim firstParagraph As Microsoft.Office.Tools.Word.Bookmark
    firstParagraph = Me.Controls.AddBookmark(Me.Paragraphs(1).Range, "FirstParagraph")
    
    Microsoft.Office.Tools.Word.Bookmark firstParagraph;
    firstParagraph = this.Controls.AddBookmark(this.Paragraphs[1].Range,
        "FirstParagraph");
    
    5eef9s6f.alert_note(ru-ru,VS.90).gifПримечание.

    Если необходимо создать элемент управления Microsoft.Office.Tools.Word.Bookmark на основе существующего элемента управления Microsoft.Office.Interop.Word.Bookmark, вызовите метод AddBookmark и передайте в качестве параметра существующий элемент управления Microsoft.Office.Interop.Word.Bookmark.

Добавление элементов управления Bookmark во время выполнения в проект уровня приложения

Начиная с пакета обновления 1, элементы управления Bookmark можно добавлять во время выполнения в любой открытый документ программным способом или с помощью надстройки уровня приложения. Для этого следует создать ведущий элемент Document, основанный на открытом документе, и использовать метод свойства Controls этого ведущего элемента. Каждый метод имеет две перегрузки, что позволяет добавлять элемент управления Bookmark следующими способами:

  • Добавить Bookmark в заданном диапазоне.

  • Добавить элемент управления Bookmark, основанный на собственной закладке в документе, (то есть, Microsoft.Office.Interop.Word.Bookmark).

Динамически созданные элементы управления Bookmark не сохраняются в документе при его закрытии. Тем не менее, в документе остается собственная закладка Microsoft.Office.Interop.Word.Bookmark. Можно повторно создать элемент управления Bookmark, основанный на собственной закладке, при следующем открытии документа. Дополнительные сведения см. в разделе Сохранение динамических элементов управления в документах Office.

Дополнительные сведения о создании ведущих элементов в проектах уровня приложения см. в разделе Расширение документов Word и книг Excel в надстройках уровня приложения во время выполнения.

Добавление элемента управления Bookmark в указанный диапазон

  • Следует использовать метод ControlCollection.AddBookmark(Range, String) и передать в диапазон Range, куда необходимо добавить элемент управления Bookmark.

    Следующий пример кода демонстрирует добавление новых элементов управления Bookmark в начало активного документа. Чтобы использовать данный пример кода, следует запустить код из обработчика событий ThisAddIn_Startup в проекте надстройки Word.

    Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    Dim firstParagraph As Bookmark = extendedDocument.Controls.AddBookmark( _
        extendedDocument.Paragraphs(1).Range, "FirstParagraph")
    
    Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    Bookmark firstParagraph = extendedDocument.Controls.AddBookmark(
        extendedDocument.Paragraphs[1].Range, "FirstParagraph");
    

Добавление элемента управления Bookmark, основанного на собственном элементе управления Bookmark

  • Следует использовать метод ControlCollection.AddBookmark(Bookmark, String) и передать в существующий элемент управления Microsoft.Office.Interop.Word.Bookmark, который будет использоваться в качестве основы для нового элемента управления Bookmark.

    Следующий пример кода демонстрирует создание нового элемента управления Bookmark на основе первого элемента управления Microsoft.Office.Interop.Word.Bookmark в активном документе. Чтобы использовать данный пример кода, следует запустить код из обработчика событий ThisAddIn_Startup в проекте надстройки Word.

    If Me.Application.ActiveDocument.Bookmarks.Count > 0 Then
        Dim firstBookmark As Word.Bookmark = Me.Application.ActiveDocument.Bookmarks(1)
        Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    
        Dim vstoBookmark As Bookmark = extendedDocument.Controls.AddBookmark( _
            firstBookmark, "VSTOBookmark")
    End If
    
    if (this.Application.ActiveDocument.Bookmarks.Count > 0)
    {
        object index = 1;
        Word.Bookmark firstBookmark = this.Application.ActiveDocument.Bookmarks.get_Item(ref index);
        Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    
        Bookmark vstoBookmark = extendedDocument.Controls.AddBookmark(
                firstBookmark, "VSTOBookmark");
    }
    

См. также

Задачи

Практическое руководство. Изменение размеров элементов управления Bookmark

Основные понятия

Общие сведения о ведущих элементах и элементах управления ведущего приложения

Добавление элементов управления в документы Office во время выполнения

Программные ограничения ведущих элементов и элементов управления ведущего приложения

Программирование надстроек уровня приложения

Настройки программирования уровня документа

Вспомогательные методы для элементов управления ведущего приложения

Другие ресурсы

Элементы управления ведущего приложения Word

Журнал изменений

Дата

Журнал

Причина

Июль 2008

Добавлены новые процедуры для надстроек уровня приложения.

Изменение функции SP1.