随着WinUI 3的到来,WPF是否已经过时?wpfwinformswinui-33232随着WinUI 3的到来,WPF是否已经过时?
在桌面应用程序开发方面,是时候完全迁移到WinUI-3并抛弃WinForm/WPF遗留问题了吗?
- jrk0076@Peregrine,这个问题与那里的原因相同,不适合在那里提问。请不要推荐你不熟悉的网站。请参阅**《软件工程(以前称为程序员)》上发生了什么?Stack Overflow指南**。 - gnat@jrk 有人说 WPF 已经过时了至少十年,但它仍然存在。因此,任何答案都只是个人观点。 - Peregrine2为了增加用户界面的混乱,现在还有 MAUI.... 哎呀!为什么不能有一些通用的用户界面标准呢? - jrk0073@jrk007 我不得不承认,我之前的评论过于草率。在深入了解WinUI 3后,我们发现有太多奇怪的问题和错误。在代码后台操作/派生XAML控件会产生意外行为,Style.Triggers不支持仅重写ControlTemplates作为最简单事情的替代品,ThemeResources也不能正常工作等等。学习资源很稀缺,GitHub论坛也不够反应迅速。我认为至少需要1-2年时间才能真正适用于生产环境。我们还是继续使用WPF。 - dotnetzen2@jrk007 另外 - 没有 XAML 设计器,热重载不一致。命中测试极其有限/有缺陷,DrawingVisuals 不受支持,必须依赖于沉重且孤立的 Composition 库或似乎已被放弃的 Win2D,并且由于我们有一个图形应用程序,这是一个不能接受的问题。微软似乎过于关注触摸友好性、多设备、视觉美化方面,而牺牲了基本的健壮功能。希望他们能意识到错误并加以修复。 - dotnetzen1另一个要提的点是,尽管模板上写着“桌面”,但WinUI3不支持“以管理员身份运行”。显然,这个功能将在WinUI 1.1中推出,但这表明该框架可能还不够成熟,尤其是对于桌面应用程序而言。我不知道为什么它从一开始就不支持提升,如果它是为桌面应用程序设计的,但这是另外一个故事了。在我们公司,我们可能需要为了这个单一原因切换回WPF,这很遗憾,但你能做什么呢? - IronHide1个回答1717这个WinUI 3.0并不会完全取代WinForms和WPF。是的,.NET Framework 4.8将是最后一个版本的.NET Framework,但由于现在我们有WinForms和WPF持续基于.NET Core开发,所以不用担心。
以下是原因:(我认为已经证明了WPF和WinForms并没有被淘汰)
自.NET Core 3.0起,WinForms和WPF正在顶部进行积极的开发和支持。在.NET 5.0中,我们在Visual Studio 2019中拥有完整的WinForms设计器支持,自16.8.x开始,而不仅是16.7.x上的WPF。
微软正在通过一个名为“Project Reunion”的技术,以一项雄心勃勃的倡议来发展Windows桌面应用程序开发。Project Reunion在GitHub上是开源的。进化中的Windows桌面应用程序也意味着包括WinForms和WPF。
另请参阅Project Reunion README:https://github.com/microsoft/ProjectReunion/blob/main/README.md
注意:Project Reunion还是其他Windows桌面UI倡议/技术的总称,如WinUI 3.0、XamlIslands、UWP等等。- Eriawan Kusumawardhono21它不会被删除,但一再强调所有其他技术(除了WinUI 2.6 aka UWP)都将进入维护模式,您将不得不转向这种统一的技术。当然,像组合器这样的基础技术,需要协调当前WHND世界与CoreWindow世界,将在未来20年内得到改进。WinForms和WPF将不会获得任何功能更新,就像我长时间使用的MFC一样。至少最终有一个有效的替代技术。哈利路亚。 - LotharPlayStations+、Hololens、3DPrinting、MobilePhones(购物)、桌面应用程序是管理员模式,而这些平台设备则是用户账户控制;因此,框架是这些软件机器的反向桌面,由框架处理;然后,WPF\WinForms的功能可以像JavaScript的StrictMode一样进行设置,以适应这些技术。 - H3sDW11e回答链接网页内容由stack overflow 提供, 点击上面的可以查看英文原文,