Пошаговое руководство. Размещение элемента управления Windows Forms в приложении WPF с помощью XAML

WPF предоставляет множество элементов управления с богатым набором функций. Однако иногда целесообразно использовать на страницах Windows Forms элементы управления WPF. Допустим, вы много инвестировали в существующие элементы управления Windows Forms или имеете элемент управления Windows Forms, предоставляющий уникальную функциональность.

В этом пошаговом руководстве показано, как разместить элемент управления Windows Forms System.Windows.Forms.MaskedTextBox на странице WPF с помощью XAML.

Полный пример кода для задач, демонстрируемых в этом пошаговом руководстве, см. в разделе Пример размещения элемента управления Windows Forms в WPF с помощью XAML.

Предварительные требования

Для выполнения шагов, описанных в этом руководстве, вам понадобится Visual Studio.

Размещение элемента управления Windows Forms

Чтобы разместить элемент управления MaskedTextBox, выполните следующие действия.

  1. Создайте проект приложения WPF с именем HostingWfInWpfWithXaml.

  2. Добавьте ссылки на следующие сборки.

    • WindowsFormsIntegration

    • System.Windows.Forms.

  3. Откройте Файл MainWindow.xaml в конструкторе WPF.

  4. В элемент Window добавьте следующее сопоставление пространства имен. Сопоставление пространства имен wf устанавливает ссылку на сборку, содержащую элемент управления Windows Forms.

    xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"  
    
  5. Внутри элемента Grid добавьте следующий код XAML.

    MaskedTextBox создается как дочерний элемент для WindowsFormsHost.

    <Grid>
    
        <WindowsFormsHost>
            <wf:MaskedTextBox x:Name="mtbDate" Mask="00/00/0000"/>
        </WindowsFormsHost>
    
    </Grid>
    
    
  6. Нажмите клавишу F5, чтобы создать и запустить приложение.

См. также раздел