Hi Guys,
I have in the last couple of weeks added dockable panel support to DKUI.
DKUI itself is written in Python 3 components in Grasshopper and compiled into a YAK using the Rhino Script Editor. This compile process does not support registering a panel in Rhino - which is required to have a dockable panel.
To get around this limit I have written a barebones C# plugin in VS 2022, which is compiled in a dll/rhp. This plugin registers itself and creates all the structure needed to register a panel. I then load this dll into a Python component in GH, create a ETO.Webview and using a “load control” method in my rhp/dll to load a the DKUI control window into the dockable panel.
Its working OK at this stage, I have some Rhino panel life-time issues to work out, but the concept is working:
However I have had feedback from users who have set there runtime to DotNetFramework of error messages on loading Rhino:
I have been able to replicate the issue and describe a fix:
- Set DotNetRunTime to NETFramework
- Restart Rhino
- Update DKUI to the latest version 26.2.23.4
- Restart Rhino
The error comes up on first running of Rhino.
If I then:
- Set DotNetRunTime to NETCore
- Restart Rhino
The error is cleared
I can then:
- Set DotNetRunTime to NETFramework
- Restart Rhino
And the error no longer comes up.
This seems to be a bit of unnecessary jumping around - is there a better way I can handle this?
I do have one more note - it appears my C# plugin is only using ONE NetCore feature, and that is ONLY to deal with the icon in the corner of the panel.
Cheers
DK

