将Winform应用程序转换为WPF应用程序

Yon*_*Nir 16 .net c# wpf xaml winforms

我有一个用WinForms制作的小程序,现在我想用WPF重新制作它.

我是WPF的新手,我读到无论你用XAML做什么,你也可以没有它,这意味着只使用代码.

当然,使用Winforms时没有任何XAML.我可以对用于winforms应用程序的WPF应用程序使用相同的代码并获得相同的结果吗?或者我是否需要创建和编辑XAML?使用或不使用XAML有什么好处?

另外,考虑到使用Winforms的过去经验,我是否应该以某种方式改变我对Winforms的设计和实现的思考方式,但是不适合WPF?

Fed*_*gui 28

不,你不能在WPF中重用winforms中的代码.

即使你可以,你也不应该.

无论你用XAML做什么,你也可以不用它

您应该使用XAML来定义UI,然后使用DataBindingMVVM,这是一种比传统的程序winforms方法更加专业的开发方式.

不使用XAML比使用XAML麻烦得多.一开始可能看起来令人生畏,但这是一件非常棒的事情.

当然,使用Winforms时没有任何XAML

不,当然不.winforms是一项非常古老的技术,不支持任何东西.这就是为什么他们创建Visual Studio设计器,否则没有人会曾经使用过winforms任何东西,因为做任何有用的东西需要巨大的巨大代码.

我可以对用于winforms应用程序的WPF应用程序使用相同的代码并获得相同的结果吗?

也许,通过调整一些类名和诸如此类的东西,但是你失去了WPF提供的主要优势,这正是摆脱了可怕的类似winforms的代码.

考虑到过去使用Winforms的经验,我是否应该以某种方式改变我对Winforms的设计和实现的思考方式,但是不适合WPF?

是.WPF支持MVVM,这需要与传统的winforms方法完全不同的心态.

我强烈建议阅读Rachel的优秀帖子,关于从winforms升级到WPF.