在VS 2010中的Winforms项目中添加WPF窗口

在VS 2010中选择“添加新项目”时,是否可以从winforms项目访问所有WPF项目? 我默认只能访问WPF userControl。

我想在winforms项目中添加一个WPF窗口。 不只是用户控件。

编辑:简答:这本身似乎不可能,但可以手动添加WPF资源和必要的参考。

显然你不能直接,但你可以做的是添加一个新的用户控件,然后修改代码使其成为一个窗口。 只需创建一个新的WPF项目,添加一个窗口并查看需要更改的内容以将用户控件转换为窗口。

在我看来,“最干净”的选择是使用这个方案:

  1. 创建一个WPF项目(添加您需要的任何WPF窗口)。 让我们称之为“WPFProject”
  2. 在同一个解决方案中创建一个WinForms项目(添加您需要的任何表单)。 让我们称之为“MainProject”。
  3. 在MainProject中添加对以下内容的引用:

    • WPFProject
    • PresentationCore
    • PresentationFramework

多数,现在您可以从MainProject打开您的WPF窗口(例如,通过按下按钮):

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim mywpfform = New WPFProject.MainWindow //MainWindow is the default name of your first WPF window. Obviously you can open any other mywpfform .Show() End Sub 

有可能这样做,我必须使用这种技术几次没有任何问题:

如何以编程方式在WinForm应用程序中创建WPF窗口