15

总之,我正在考虑将我的应用程序从 VB.net 移植到基于 C# 的 MONO 项目,这样它就可以在 Windows 和 Mac 上运行。但是,我需要一个 Mac 友好的 WPF 替代品。它必须具有非常相似的功能。QML(通过 QT)不是一个可行的选择,因为它对我们来说花费太多钱。

4

5 回答 5

11

还有https://github.com/AvaloniaUI/Avalonia一个受 WPF 启发的多平台 .NET UI 框架

于 2017-03-17T21:33:30.910 回答
6

Miguel de Icaza 推荐MonoMac作为 Mac 的 WPF 的替代品,如此处所述。正如他解释的那样,没有计划在单声道中实现 WPF。

MonoMac 是一个正在进行中的工作。Cocoa API 的某些部分尚未封装。您应该从示例开始,以了解可能的情况。

您将不得不在一个通用引擎之上构建两个不同的 UI,但这通常是一个很好的关注点分离。

对于带有GTK#的 UI,还有一个可能的通用代码库。

于 2011-03-31T13:48:34.000 回答
4

根据您的应用程序的功能,您可能会将您的应用程序移植到 Silverlight/Moonlight。 MAC 支持 Silverlight,但您需要Moonlight for Linux。当然,如果您在客户端机器的文件系统上做很多工作或其他什么,这不是一个选择。

于 2011-03-31T13:42:37.977 回答
4

虽然我已经接受了一个答案,但如果有人看到这个问题,我想发布我目前正在做的事情。

我目前使用 Python 和 PyGTK 作为 GUI,GStreamer 用于视频。这产生的结果几乎与 WPF 相同(一些硬编码动画除外)。此外,它还可以在 Windows、Mac 和 Linux 上运行。

编辑:GStreamer 没有达到我的目的。虽然它在大多数情况下运行良好,但我无法在视频上叠加透明的 .png 图像。我终于切换到 Adob​​e Flash (Adobe AIR)。

编辑 2:对于后来遇到此问题的任何人,当 SWF 的未来受到质疑时,我的公司开始使用 Gtk+/gtkmm 和 Cairo 的一些组件用 C++ 构建我们自己的动画系统。最终,这属于另一个答案的建议......将GUI与平台分开。

于 2011-09-02T15:26:18.293 回答
0

https://www.noesisengine.com/

是 xaml/wpf 的另一种替代方案,也适用于视频游戏引擎。它目前有一个收入高达 10 万的独立/免费级别,并且是跨平台的。

于 2021-05-24T18:40:20.057 回答