Cross-Plattform-Entwicklung ist eine nette Idee, aber um ganz ehrlich zu sein, ich habe noch nie eine Anwendung gesehen, die wirklich gut außerhalb seiner nativen Umgebung aussieht. Aus diesem Grund denke ich, dass Sie, wenn Sie wirklich gute Benutzererfahrung bieten möchten, native Toolkits auf allen Plattformen verwenden sollten, die Sie unterstützen möchten.
Natürlich, wenn Sie nur eine Proof of Concept wollen, dann WinForms auf einem Mac (oder Linux) sind in Ordnung, aber wenn Sie eine Anwendung wollen, die konkurriert mit anderen nativen Lösung dann sollten Sie wirklich überlegen, ein eigenes natives Frontend zu schreiben jede unterstützte Plattform. Ein gutes Beispiel wie das gemacht wurde ist MindManager von Mindjet. Ihre Mac-Version ist ein vollständiges, von Grund auf neu geschriebenes Interface. Das Ergebnis ist eine Anwendung, die Mac-Benutzern die Erfahrung bietet, die sie auf ihrer Plattform zu erwarten gelernt haben.
Also zurück zu Mono. Es gibt Cocoa bindings in Mono. Persönlich habe ich nie versucht, sie zu verwenden, aber wenn Sie Macs mit Ihrer Anwendung zielen wollen, sind sie sicherlich einen Blick wert. Es wäre wirklich großartig, wenn sie als eine gültige Wahl für die UI-Entwicklung auf einem Mac angesehen werden könnten.
+1 für das Beharren auf dem Warum. –