3

I'm looking for a UI library for .NET and Mono, something like Gtk#, but with support for 64-bit (on Windows too), and with some widget like WinForm's ListView, with VirtualMode.

I don't want to use WinForms and WPF. Is there any alternative?

Thanks.

Alon Gubkin
  • 56,458
  • 54
  • 195
  • 288
  • It would be great to have Qt, but I'm afraid is not available. We had to come up with our own for our product. It is based on WinForms and able to run on Mac/Linux/BSD/Windows/Solaris – pablo Nov 04 '10 at 23:35

3 Answers3

1

You can try WX Widgets.NET : http://wxnet.sourceforge.net/

Tried it, some years ago, but preferred to go the GTK# route.

Not sure if it supports 64bit, but personally I still prefer to provide 32bit binaries even for deployment on 64bit systems, exactly because lots of infrastructure (native libs specially) isn't still available in 64bit, not only for UI.

Monoman
  • 721
  • 10
  • 12
1

Do you have a compelling reason to need 64-bit? You could always do your UI with GTK# in 32-bit, but have a backend service installed/running 64-bit. Just a thought on this one. Unless you are dealing with very large sets of data, you may be better off going the 32-bit route (at least in windows).

As already mentioned, there is wxWidgets, as well as a few other UI framework ports as well, but to be honest WinForms and GTK# are the best supported. If you want cross-platform GTK# is your best option currently. There is a more comprehensive list of GUI Toolkits for Mono here.

Tracker1
  • 19,103
  • 12
  • 80
  • 106
0

The main reason 64-bit GTK+ & GTK# aren't shipped on Windows is because there hasn't really been much demand. After all, most apps on 64-bit Windows are 32-bit. Some users did put some effort into fixing bugs, so if you have a compelling reason for needing 64-bit on Windows I suggest poking around in the gtk-sharp-list mailing list archives.

Regarding VirtualMode, I'm not familiar with it but it sounds like implementing a custom GTK TreeModel. GTK TreeView uses a model/view split - so for a list view, one typically connects a ListStore (a simple flat implementation of TreeModel) to a TreeView. Alternatively, you may wish to check Banshee's fully managed GTK# ListView, which was designed for virtualized views onto a Sqlite database.

Mikayla Hutchinson
  • 16,113
  • 2
  • 44
  • 50