【问题标题】:Is It posible to Port Windows Forms apps to WPF Converting it's Designer.cs files to XAML files?是否可以将 Windows 窗体应用程序移植到 WPF 将其 Designer.cs 文件转换为 YAML 文件?
【发布时间】:2018-07-18 19:12:00
【问题描述】:

美好的一天,我想将我的 Windows 窗体应用程序移植到 WPF,我一直在调查并且我知道几乎不可能移植它,因为 Winforms 和 WPF 的 Designer.cs 文件使用 .XAML,但是,@987654321 @converts 你的设计器文件到 XAML,所以,它仍然是可能的吗?

【问题讨论】:

  • 即使它“有效”,我怀疑它是否是可取的。如果您正在使用 WPF,您将希望遵循 MVVM 范例,并且 WinForm 不太可能被设计为进行翻译。
  • 不要走这条路……只是不要。你会后悔的。它不兼容。唯一的共同点是它是桌面技术。还有.Net :-)
  • 您可能使用 WindowsFormsHost (docs.microsoft.com/en-us/dotnet/api/…) 在 WPF 中成功托管 WinForms 控件,但正如其他人所说,您真的不应该这样做。

标签: c# wpf winforms wpf-controls windows-forms-designer


【解决方案1】:

您不能移植 YourForm.Designer.cs,因为 System.Windows.FormsSystem.Windows.Controls 是不同的类。但还是有办法的。将 Windows 窗体的命名空间添加到 XAML 代码。然后,使用 WindowsFormsHost。您只能使用 WindowsFormsHost 添加它们。然后,只需将您的方法复制到 WPF 应用程序的 C# 代码即可。

注意:不要忘记正确命名 WindowsFormsHost 中的控件。
注意 2:您必须在该操作之后检查您的代码。因为有些事情可能需要改变。

【讨论】:

    猜你喜欢
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 2011-02-01
    • 1970-01-01
    • 2017-04-18
    相关资源
    最近更新 更多