Как добавить элементы управления содержимым в документы Word
В проектах на уровне документа Word элементы управления содержимым можно добавлять в документ во время разработки или во время выполнения. В проектах надстройки VSTO для Word элементы управления содержимым можно добавлять в любой открытый документ во время выполнения.
Применимо к: Сведения в этом разделе относятся к - проектам уровня документа и добавлению VSTO - в проектах для Word. Дополнительные сведения см. в разделе доступность функций по типам приложений Office и проектов.
В этом разделе описываются следующие задачи.
Дополнительные сведения об элементах управления содержимым см. в разделе элементы управления содержимым.
Добавление элементов управления содержимым во время разработки
Вы можете добавить элементы управления содержимым в документ Word в проекте на уровне документа во время разработки несколькими способами.
Добавьте элемент управления содержимым из вкладки Элементы управления Word****панели элементов.
Добавьте элемент управления содержимым в документ так же, как вы добавляете управляемый элемент управления содержимым в Word.
Перетащите элемент управления в документ из окна Источники данных . Это полезно, если нужно одновременно привязать элемент управления к данным при его создании. Дополнительные сведения см. в статьях как заполнить документы данными из объектов и как заполнять документы данными из базы данных.
Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация среды IDE.
Добавление элемента управления содержимым в документ с помощью панели элементовВ документе, который размещен в конструкторе Visual Studio , поместите курсор там, где необходимо добавить элемент управления содержимым, или выделите текст, который заменит элемент управления содержимым.
Откройте панель элементов и щелкните вкладку Элементы управления Word .
Добавьте элемент управления одним из следующих способов.
Дважды щелкните элемент управления содержимым в панели элементов.
или диспетчер конфигурации служб
Щелкните элемент управления содержимым на панели элементов и нажмите клавишу Ввод .
или диспетчер конфигурации служб
Перетащите элемент управления содержимым из панели элементов в документ. Элемент управления содержимым добавляется в текущее выделение в документе, а не в позиции указателя мыши.
Невозможно добавить GroupContentControl с помощью панели элементов. GroupContentControl можно добавлять только в Word или во время выполнения.
Visual Studio не предоставляет элемент управления содержимым «Флажок» в панели элементов. Чтобы добавить элемент управления содержимым «Флажок» в документ, необходимо создать ContentControl программно. Дополнительные сведения см. в разделе элементы управления содержимым.
Добавление элемента управления содержимым «Флажок» в документ из WordВ документе, который размещен в конструкторе Visual Studio , поместите курсор там, где необходимо добавить элемент управления содержимым, или выделите текст, который заменит элемент управления содержимым.
На ленте перейдите на вкладку Разработчик .
Если вкладка Разработчик не отображается, сделайте ее видимой. Дополнительные сведения см. в разделе инструкции. Отображение вкладки разработчика на ленте.
В группе Элементы управления щелкните значок элемента управления содержимым, который требуется добавить.
Добавление элементов управления содержимым во время выполнения в проекте уровня документа
Элементы управления содержимым можно добавить в документ программным образом во время выполнения с помощью методов свойства Controls класса ThisDocument в проекте. У каждого метода есть три перегрузки, которые можно использовать для добавления элемента управления содержимым следующими способами:
добавление элемента управления в текущее выделение;
добавление элемента управления в указанный диапазон;
добавление элемента управления, основанного на управляемом элементе управления содержимым, в документ.
При закрытии документа динамически созданные элементы управления содержимым не сохраняются в документе. Однако неуправляемый элемент управления содержимым остается в документе. Можно повторно создать элемент управления содержимым, основанный на управляемом элементе управления содержимым, при очередном открытии документа. дополнительные сведения см. в разделе добавление элементов управления в Office документы во время выполнения.
Чтобы добавить элемент управления содержимым «Флажок» в документ в проекте Word 2010, необходимо создать объект ContentControl . Дополнительные сведения см. в разделе элементы управления содержимым.
Добавление элемента управления содержимым в текущее выделениеИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть единственный параметр для имени нового элемента управления.
Следующий пример кода использует метод AddRichTextContentControl , чтобы добавить новый RichTextContentControl в начало документа. Для выполнения этого кода добавьте код в класс ThisDocument в проекте и вызовите метод AddRichTextControlAtSelection обработчика событий ThisDocument_Startup .
Добавление элемента управления в указанный диапазонИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть Range параметр.
Следующий пример кода использует метод AddRichTextContentControl , чтобы добавить новый RichTextContentControl в начало документа. Для выполнения этого кода добавьте код в класс ThisDocument в проекте и вызовите метод AddRichTextControlAtRange обработчика событий ThisDocument_Startup .
Добавление элемента управления содержимым, основанного на управляемом элементе управления содержимымИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть Microsoft.Office.Interop.Word.ContentControl параметр.
В следующем примере кода метод AddRichTextContentControl используется для создания нового объекта RichTextContentControl для каждого управляемого элемента управления форматированием текста, который есть в документе. Для выполнения этого кода добавьте код в класс ThisDocument в проекте и вызовите метод CreateRichTextControlsFromNativeControls обработчика событий ThisDocument_Startup .
добавление элементов управления содержимым во время выполнения в проекте надстройки VSTO
Вы можете добавить элементы управления содержимым программным способом в любой открытый документ во время выполнения с помощью надстройки VSTO. Для этого следует создать ведущий элемент Document , основанный на открытом документе, а затем использовать методы свойства Controls этого ведущего элемента. У каждого метода есть три перегрузки, которые можно использовать для добавления элемента управления содержимым следующими способами:
добавление элемента управления в текущее выделение;
добавление элемента управления в указанный диапазон;
добавление элемента управления, основанного на управляемом элементе управления содержимым, в документ.
При закрытии документа динамически созданные элементы управления содержимым не сохраняются в документе. Однако неуправляемый элемент управления содержимым остается в документе. Можно повторно создать элемент управления содержимым, основанный на управляемом элементе управления содержимым, при очередном открытии документа. дополнительные сведения см. в разделе сохранение динамических элементов управления в Office документах.
дополнительные сведения о создании ведущих элементов в проектах надстроек VSTO см. в разделе расширение документов Word и Excel книг в VSTO надстроек во время выполнения.
Чтобы добавить элемент управления содержимым «Флажок», необходимо создать объект ContentControl . Дополнительные сведения см. в разделе элементы управления содержимым.
Добавление элемента управления содержимым в текущее выделениеИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть единственный параметр для имени нового элемента управления.
Следующий пример кода использует метод AddRichTextContentControl , чтобы добавить новый RichTextContentControl в начало активного документа. Для выполнения этого кода добавьте код в класс ThisAddIn в проекте и вызовите метод AddRichTextControlAtSelection обработчика событий ThisAddIn_Startup .
Добавление элемента управления в указанный диапазонИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть Range параметр.
Следующий пример кода использует метод AddRichTextContentControl , чтобы добавить новый RichTextContentControl в начало активного документа. Для выполнения этого кода добавьте код в класс ThisAddIn в проекте и вызовите метод AddRichTextControlAtRange обработчика событий ThisAddIn_Startup .
Добавление элемента управления содержимым, основанного на управляемом элементе управления содержимымИспользуйте ControlCollection метод с именем Add <control class> (где Control class — это имя класса элемента управления содержимым, который вы хотите добавить, например AddRichTextContentControl ), и у которого есть Microsoft.Office.Interop.Word.ContentControl параметр.
В следующем примере кода метод AddRichTextContentControl используется для создания нового объекта RichTextContentControl для каждого управляемого элемента управления форматированием текста в документе после его открытия. Для выполнения этого кода добавьте код в класс ThisAddIn в проекте.
Для C# необходимо присоединить обработчик Application_DocumentOpen к событию DocumentOpen .