Пошаговое руководство. Создание нового содержимого WPF в формах Windows Forms во время разработки
В этом разделе показано, как создать элемент управления Windows Presentation Foundation (WPF) для использования в приложениях на основе Windows Forms.
В этом пошаговом руководстве выполняются следующие задачи:
создание проекта;
создание элемента управления WPF;
добавление нового элемента управления WPF в форму Windows Forms. Элемент управления WPF размещается в элементе управления ElementHost.
Предварительные требования
Ниже приведены компоненты, необходимые для выполнения данного пошагового руководства.
- Visual Studio 2017
Создание проекта
Первым шагом является создание проекта Windows Forms. Откройте Visual Studio и создайте новый приложение Windows Forms (.NET Framework) проект в Visual Basic или Visual C# с именем HostingWpf.
Note
При размещении содержимого WPF поддерживаются только проекты C# и Visual Basic.
Создание элемента управления WPF
Создать элемент управления WPF и добавить его в проект можно так же легко, как добавить в проект любой другой элемент. Конструктор Windows Forms работает с определенного типа элемента управления с именем составного элемента управления, или пользовательский элемент управления. Подробнее о пользовательских элементах управления WPF см. в разделе UserControl.
Note
Тип System.Windows.Controls.UserControl для элементов управления WPF отличается от типа пользовательских элементов управления, предоставляемого Windows Forms, который также называется System.Windows.Forms.UserControl.
Создание элемента управления WPF
В обозревателе решений, добавьте новый Библиотека пользовательских элементов управления WPF (.NET Framework) проекта к решению. Используйте имя по умолчанию для библиотеки элементов управления (
WpfControlLibrary1). Имя элемента управления по умолчанию —UserControl1.xaml.Добавление нового элемента управления происходит следующее:
Добавляется файл UserControl1.xaml.
Добавляется файл UserControl1.xaml.cs или UserControl1.xaml.vb. Этот файл содержит код программной части для обработчиков событий и иных реализованных компонентов.
Добавляются ссылки на сборки WPF.
Файл UserControl1.xaml открывается в Конструктор WPF для Visual Studio.
Убедитесь в том, что элемент
UserControl1выбран в представлении конструирования. Дополнительные сведения см. в разделе Как Выберите и перемещать элементы в области конструктора.В свойства окна, установите для параметра Width и Height свойства 200.
Из элементов, перетащите System.Windows.Controls.TextBox элемента управления в область конструктора.
В свойства окна, установите для параметра Text свойства Hosted Content.
Note
Обычно размещается более сложное содержимое WPF. Элемент управления System.Windows.Controls.TextBox используется здесь в целях наглядности.
Выполните построение проекта.
Добавление элемента управления WPF в форму Windows Forms
Новый элемент управления WPF готов к использованию в форме. Windows Forms используется ElementHost управления для размещения содержимого WPF.
Добавление элемента управления WPF в форму Windows Forms
Откройте
Form1в конструкторе Windows Forms.В элементов, найдите вкладку пользовательские элементы управления WPF WPFUserControlLibrary.
Перетащите экземпляр
UserControl1в форму.Для размещения элемента управления WPF на форме будет автоматически создан элемент управления ElementHost.
ElementHost Элемент управления называется
elementHost1и в свойства окно, вы увидите его Child свойству UserControl1.В проект добавляются ссылки на сборки WPF.
Элемент управления
elementHost1имеет панель смарт-тегов, на которой приводятся имеющиеся параметры размещения.
В задачи ElementHost смарт-тега выберите закрепление в родительском контейнере.
Нажмите клавишу F5, чтобы выполнить сборку приложения и запустить его.
Следующие шаги
Windows Forms и WPF — это разные технологии, но они предназначены для тесного взаимодействия. Чтобы обеспечить богатый внешний вид и поведение в приложениях, попробуйте сделайте следующее:
Размещение элемента управления Windows Forms на странице WPF. Дополнительные сведения см. в разделе Пошаговое руководство: Размещение Windows Forms элемента управления в WPF.
Применение стилей оформления Windows Forms к содержимому WPF. Дополнительные сведения см. в разделе Как Включение визуальных стилей в гибридном приложении.
Изменение стиля оформления содержимого WPF. Дополнительные сведения см. в разделе Пошаговое руководство: Применение стилей к содержимому WPF.