Ok, so yesterday I took
a look at MonoDevelop's GUI designer for Gtk# and showed a
screenshot of the same Gtk# desktop app running on Windows (Server 2003) and Linux (via VMWare). Today I played around with the Mono 1.1.13 that comes with Ubuntu Dapper Beta and was also pleasantly surprised to realize that it now supports Windows Forms.
What is Windows Forms? It's the managed framework for creating Windows desktop apps, combining a bit of the flexibility of MFC with the ease of use of VB6's point-n-click GUI designer. The Mono project initially attempted to implement Windows Forms support using the WINE (a Windows emulator) project, but that failed miserably since
WINE was a moving target. They retraced their steps over a year ago and vowed to implement it via System.Drawing.
I think their efforts are now coming to fruition. I tested things by typing in the simple program found in the
Windows Forms QuickStart tutorial into MonoDevelop. Yep, I had to type things out as MonoDevelop doesn't have a Windows Forms designer yet. At first the compiled app wouldn't run, complaining of an obscure error that it could not understand my X (Window System) locale. Duh! I typed in this command:
export LANG=C
and retried running the app and it worked!
Now just for fun I also tried creating a simple WinForms app on VS.NET 2005. It made use of partial classes and targeted the .NET 2.0 Framework. I copied it over to Linux and ran it. Lo and behold it still worked!
![Smile [:)]](/emoticons/emotion-1.gif)
Here's the
obligatory screenshot.
So now we have a mature framework in Gtk# for running cross-platform .NET desktop apps. Windows Forms is next, with the targeted H2 2006 release for Mono 1.2. Let's just hope MS doesn't have or assert patents on Windows Forms.
Posted
05-10-2006 10:32 AM
by
cruizer