attackingrahu
2011-01-21T13:39:35Z
Hi
When we try to run IGRID components in an dotnet application on linux platform it throws an exception.
Could you detail out how to run IGRID components in linux with mono framework
Igor/10Tec
2011-01-21T13:48:33Z
We can guarantee that iGrid.NET will work properly only on the Windows platform. Even if the whole code were 100% managed, in theory it would be possible to port it to Linux, but in fact there are many things which should not work there. These are Windows native visual effects for drop-down lists, messages sent by Windows when the control should be redrawn, etc. The .NET Windows Forms package is a wrapper for all this stuff, but inside it is the same "native" Windows. No wonder that it fails in Linux.

iGrid.NET could work properly in mono/Linux for sure only if it were a "calculating" component, i.e. a component that performs some calculations and/or data manipulations without the visible window part.
pwsmietan
2011-01-28T18:39:25Z
Glad you documented this problem - this is something we're considering doing as well. Can your team run a debug session on MONO and see why it's not working? I'm sure this will prove helpful for your marketing of iGrid.

thanks!

-Paul
Igor/10Tec
2011-01-31T08:33:22Z
Paul, sorry, but we explained that we do not see any perspective for iGrid.NET in Linux/mono because of the technical reasons of compatibility, and this is not our target development platform, so we will not do any tests.

Only MS Windows for Windows Forms.NET controls 🙂
max.weller
2012-02-10T16:45:02Z
Hi, I've got the .NET iGrid to work on Debian Linux using Wine. (took me some long hours!)

It uses some hacks, because by default there are Win32Exceptions telling you that RegisterClass failed ("Windows class name not valid"). So I just put try-catch-blocks around the fHookSettingChangeWindow.CreateHandle(myParams); commands which cause this exception.

iGrid.cs:Initialize(), around line 2960

      try {
        fHookSettingChangeWindow.CreateHandle(myParams);
      } catch (Exception ex) {
        System.Console.WriteLine("[IGRID] [!!!] CreateHandle FAILED for iGrid.fHookSettingChangeWindow");
        System.Console.WriteLine(ex.ToString());
      }

This is part of three classes. If you do this, iGrid seems to work with Wine (content can be set programatically).

I haven't figured out yet if there are any drawbacks, because I don't know what this HookSettingChangeWindow is good for. Can anybody shed some light on possible problems caused by my work-around?

Yours, Max Weller