演练:在 WPF 应用程序中承载 Windows 窗体控件

更新:2007 年 11 月

本演练向您演示如何使用 Visual Studio Windows Presentation Foundation (WPF) 设计器在 WPF 应用程序中承载 Windows 窗体控件。有关 Windows 窗体和 WPF 互操作性的更多信息,请参见迁移和互操作性

本演练中阐释的任务包括:

  • 创建项目。

  • 在 WPF 应用程序中承载 Windows 窗体控件。

说明:

显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您的当前设置或版本。若要更改设置,请在“工具”菜单上选择“导入和导出设置”。有关更多信息,请参见 Visual Studio 设置

先决条件

您需要以下组件来完成本演练:

  • Visual Studio 2008。

创建项目

第一步是为宿主应用程序创建项目。

创建项目

  1. 创建一个名为“DemoApplication”的 WPF 应用程序项目。有关更多信息,请参见如何:创建新的 WPF 应用程序项目

    Window1.xaml 在 WPF 设计器中打开。

  2. 在“解决方案资源管理器”中,添加一个对名为 WindowsFormsIntegration.dll 的 WindowsFormsIntegration 程序集的引用。

  3. 在“解决方案资源管理器”中,添加一个对名为 System.Windows.Forms.dll 的 Windows 窗体程序集的引用。

在 WPF 中承载 Windows 窗体控件

可以使用 WindowsFormsHost 元素在 WPF 应用程序中承载 Windows 窗体控件。

在 WPF 中承载 Windows 窗体控件

  1. 在 XAML 视图中,对于 Window1.xaml,通过在 Window 开始标记中插入以下命名空间映射来导入 Windows 窗体命名空间。有关更多信息,请参见如何:将命名空间导入 XAML

    xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
    
  2. Grid 开始标记后面插入以下代码。

    <WindowsFormsHost>
        <wf:MaskedTextBox Mask="00/00/0000" />
    </WindowsFormsHost>
    

    表示所承载的 Windows 窗体控件 (MaskedTextBox) 的区域将显示在设计器中。

后续步骤

还可以在 Windows 窗体中承载 WPF 控件。有关更多信息,请参见使用 Windows Presentation Foundation 控件

请参见

任务

演练:使用 WPF 设计器承载 Windows 窗体用户控件

演练:在 Windows Presentation Foundation 中承载 Windows 窗体控件

参考

WindowsFormsHost

ElementHost

其他资源

使用 WPF 设计器中的控件

迁移和互操作性