2011-12-16 47 views
11

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

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

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

+1

检查这个http://stackoverflow.com/questions/450377/upgrading-a-winforms-app-to-wpf – Atomosk 2012-08-29 03:54:33

回答

6

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

+0

我认为这样做,但我希望它不是很简单,有点发拉,所以我甚至没有尝试:-)我会给它一个 – 2011-12-16 12:37:00

+0

好,第一步是用XAML中的Window标签替换UserControl标签,并使类扩展Window。然后看看还有什么。 – Tudor 2011-12-16 12:39:13

+0

这可能是最好的解决方案,并在此逐步解释:http://www.i-think22.net/archives/2008/08/05/adding-wpf-windows-to-an-existing-windows-form -project/ – surfen 2011-12-17 15:28:05

4

在我看来,“最干净”的选项使用此方案:

  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 
相关问题