繁体   English   中英

将csproj文件从winform转换为wpf

[英]Convert csproj file from winform to wpf

我有一个Winform应用程序,它有一个非常简单的表单,program.cs主文件和大约60个后端.cs文件。 我想将项目转换为WPF应用程序。 这里没有显示任何接近我想做的事情。

我需要

  • 转换csproj文件,这样我就可以添加WPF窗口了
  • 该转换将“就地”完成以保持我的源代码控制整洁并避免将所有后端文件添加回其正确的文件夹中的麻烦,添加对外部依赖项的引用等。
  • 创建一个空的mainwindow.xaml(+ .cs)文件,我将使用适当的控件手动填充该文件。

然后,我将在视图和viewmodel文件之间手动拆分旧表单文件的内容。

有什么方法比从头开始更容易?

编辑:我宁愿不将新的WPF ui托管到旧的winforms shell中,而是用wpf替换当前的表单应用程序。

EDIT2:我不想对整个项目和架构转换WPF(因为它是提出和回答的SO几次),我完全理解,这些是2个不同的框架和我完全愿意做手工的变化。 我想转换csproj所以它将编译为WPF应用程序而不是Forms应用程序。

对于那些不想进行比较的人来说,简短的答案是WPF .csproj文件包含一个附加属性:

<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

只需将它放在第一个<PropertyGroup>...</PropertyGroup>部分中,它应该无关紧要。

{60dc8134-eba5-43b8-bcc9-bb4bc16c2548}是这是一个WPF项目, {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}表示一个C#项目。 您可以从此SO问题中了解有关项目类型指南的更多信息。

从您的edit2看来,您只想将项目类型从“Winforms”更改为“WPF”而不更改任何项目项。 我不知道你为什么要这样做,但尝试创建一个空的Winforms项目,然后创建一个空的WPF项目,然后比较两个项目文件。

无论两个空项目之间有什么区别,都要对现有的Winforms项目进行更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM