Практическое руководство. Добавление закладок в документы Word
В проектах уровня документа можно добавлять элементы управления Bookmark в документ проекта во время разработки или во время выполнения.В проектах уровня приложения элементы управления Bookmark добавляются в любой открытый элемент во время выполнения.
Применение. Сведения этого раздела применяются к проектам уровня документа и уровня приложения для Word 2013 и Word 2010. Дополнительные сведения см. в разделе Доступность функций по типам приложений Office и проектов.
В этом разделе описаны следующие задачи:
Добавление элементов управления Bookmark во время разработки
Добавление элементов управления Boomark во время выполнения в проектах уровня документа
Добавление элементов управления Bookmark во время выполнения в проектах уровня приложения
Дополнительные сведения об элементах управления Bookmark см. в разделе Элементы управления Bookmark.
Добавление элементов управления Bookmark во время разработки
Существует несколько способов добавления элементов управления Bookmark в документ в проекте уровня документа во время разработки:
Из Панели элементов Visual Studio.
Можно перетащить элемент управления Bookmark с Панели элементов в документ.Этот способ удобен при использовании Панели элементов для добавления в документ элементов управления формы Windows Forms.
Из приложения Word.
Добавить в документ элемент управления Bookmark можно тем же самым способом, что и обычную закладку.Преимущество этого способа заключается в том, что имя элементу управления можно присвоить во время его создания.
Из окна Источники данных.
Перетащить в документ элемент управления Bookmark можно из окна Источники данных.Это удобно, если необходимо одновременно привязать элемент управления к данным.Ведущий элемент управления можно добавить тем же способом, что и элемент управления форм Windows Forms из окна Источники данных.Дополнительные сведения см. в разделе Связывание данных и Windows Forms.
Примечание |
---|
На вашем компьютере названия некоторых элементов интерфейса пользователя Visual Studio или их расположение могут отличаться от указанных в нижеследующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Параметры Visual Studio. |
Добавление элемента управления Bookmark с панели элементов в документ
Откройте Панель элементов, после чего откройте вкладку Элементы управления Word.
Перетащите в документ элемент управления Bookmark.
Откроется диалоговое окно Добавление закладки.
Выделите текст и иные элементы, которые требуется включить в закладку.
Нажмите кнопку ОК.
Если необходимо присвоить закладке имя, отличное от имени по умолчанию, измените его в окне Свойства.
Добавление в документ Word элемент управления Bookmark
В документе, который размещен в конструкторе Visual Studio, установите курсор там, куда Вы хотите добавить элемент управления Bookmark, или выделите текст, который Вы хотите включить в закладку.
На вкладке Вставка на ленте, в группе Связи, нажмите кнопку Закладка.
В диалоговом окне Закладка введите имя новой закладки и выберите команду Добавить.
Добавление элементов управления 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");
Примечание Если необходимо создать элемент управления Microsoft.Office.Tools.Word.Bookmark на основе существующего элемента управления Microsoft.Office.Interop.Word.Bookmark, вызовите метод AddBookmark и передайте в качестве параметра существующий элемент управления Microsoft.Office.Interop.Word.Bookmark.
Добавление элементов управления Bookmark во время выполнения в проект уровня приложения
Элементы управления 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 = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument) Dim firstParagraph As Bookmark = extendedDocument.Controls.AddBookmark( _ extendedDocument.Paragraphs(1).Range, "FirstParagraph")
Document extendedDocument = Globals.Factory.GetVstoObject(this.Application.ActiveDocument); 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 = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument) 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 = Globals.Factory.GetVstoObject(this.Application.ActiveDocument); Bookmark vstoBookmark = extendedDocument.Controls.AddBookmark( firstBookmark, "VSTOBookmark"); }
См. также
Задачи
Практическое руководство. Изменение размеров элементов управления Bookmark
Основные понятия
Автоматизация Word с помощью расширенных объектов
Общие сведения о ведущих элементах и элементах управления ведущего приложения
Добавление элементов управления в документы Office во время выполнения
Программные ограничения ведущих элементов и элементов управления ведущего приложения