Перекрестная платформа Альтернативы WPF

все, я собираюсь портировать свое приложение с VB.net на проект MONO на С#, поэтому он может работать как на Windows, так и на Mac. Тем не менее, мне нужна альтернатива WPF для Mac. Он должен иметь очень похожую функциональность. QML (по QT) не является жизнеспособным вариантом, поскольку для нас это слишком много денег.

Ответ 1

Мигель де Икаса рекомендует MonoMac в качестве замены WPF для Mac, как указано здесь. Как он объясняет, нет плана по внедрению WPF в моно.

MonoMac - это незавершенное производство. Некоторые части API Cocoa еще не завершены. Вы должны начать с samples, чтобы получить представление о том, что возможно.

Вам нужно будет создать два разных пользовательских интерфейса поверх общего движка, но это, как правило, хорошее разделение проблем.

Существует также возможная общая база кода для пользовательского интерфейса с GTK #.

Ответ 3

В зависимости от функциональности вашего приложения вы можете перенести приложение в Silverlight/Moonlight. Silverlight поддерживается на MAC, но вам понадобится Moonlight для Linux. Конечно, если вы много работаете с файловой системой клиентской машины или нет, это не вариант.

Ответ 4

Я принял ответ некоторое время назад, я хочу опубликовать то, что я делаю сейчас, если кто-то рассмотрит этот вопрос.

В настоящее время я использую Python с PyGTK для графического интерфейса и GStreamer для видео. Это дает результаты, почти идентичные WPF (за исключением некоторых жестко настроенных анимаций). Кроме того, он работает в Windows, Mac и Linux.

РЕДАКТИРОВАТЬ: GStreamer не выходил за мои цели. Хотя он работает хорошо по большей части, я не мог сложить прозрачные .png изображения по видео. Я наконец переключился на Adobe Flash (Adobe AIR).

EDIT 2: Для тех, кто приходит через это позже, когда будущее SWF упало на вопрос, моя компания начала строить свою собственную систему анимации в С++, используя некоторые компоненты Gtk +/gtkmm и Каир. В конечном счете, это подпадает под совет другого ответа... отдельный графический интерфейс с платформы.