Again, I agree with the separation of business logic from the GUI. In fact, on mono, I never want to see the GUI. It¹s due to the fact that my parallelism relies on multiple concurrent BackgroundWorkers. I¹m restricted to .net 2.0 , nothing later. So I don¹t have the TPL available. I have BackgroundWorkers, Threads, and Threadpool. As I understand it, Threadpools don¹t have a way to know when they are finished (at least, not directly). Perhaps I misunderstand. BackgroundWorkers are simple, and are performing their function perfectly on Mono, so long as X is there. The only option left is directly using Threads.
So to be clear, the only reason I wanted Windows Forms on Mono is to use BackgroundWorker because it¹s simple and it works. ‹ ‹ ‹ Glover E. George Computer Scientist Information Technology Laboratory US Army Engineer Research and Development Center Vicksburg, MS 39180 601-634-4730 On 1/8/16, 10:09 AM, "Edward Ned Harvey (mono)" <edward.harvey.m...@clevertrove.com> wrote: >I think the advice would generally be: > >1. Yes you can absolutely write a Console Application, which works >perfectly cross-platform, and does not need any WinForms or X11. (Right >click your solution, new project, Console Application). It's better to >create a new project than to convert an existing WinForms project, unless >you know all the details of what's different between the two types of >projects. They launch differently, in different thread compartments, and >some stuff like that - it's not as simple as merely removing the >System.Windows.Forms reference. Which brings me to the second point... >2. You really should separate your business logic from the GUI code. >3. In general, you should not expect WinForms to work well on anything >other than windows. If you need a GUI for other platforms, design a new >one, or use a cross-platform GUI toolkit such as Eto.Forms. If you don't >need a GUI... Then separate the WinForms GUI code from the non-GUI code, >so you can build your non-windows project independently of WinForms. > >Really, the core logic should be moved to its own assembly, so the >winforms project and console project can both reference it. > >There is *some* support for WinForms on non-windows platforms. Rarely >does it ever work well - nobody on a mac or linux wants windows that look >like WinForms - and that's if it works at all. (Lots of times it's >straight up nonfunctional). Even if it works perfectly, nobody wants to >be dependent on launching X11 on a mac, and it's only *sometimes* >acceptable on linux. > _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list