Best practice or technology for WPF or XAML cross platform GUI development?

I am curious if anyone here has experience developing WPF or XAML interfaces for cross-platform rhinocommon apps/plugins - and even if this is actually possible!

If it is possible thoughts about the best approach would be appreciated.


WPF is Windows-only, so that is a no-go.

The eto UI toolkit that is used by Rhino supports writing XAML, but it is not “the same” XAML as you would write for a WPF application. See for more details and check the Eto-related entries on this page for more information.

Well I think differently. But still. I believe if you create a WPF app and later converting it to Eto is simpler, than writing Eto from scratch. Eto is extremely poor documented.

1 Like

@menno, @TomTom,

Thank you both for these thoughts. I will complete the WPF work and then take a look at ETO.

Just another question. If I’m right it’s now possible to develop for rhino in C++. Years ago when I started dabbling I don’t think that was an option so I turned to C#. To develop applications in the future clearly it makes sense to take the cross-platform route. What are your thoughts about languages? C++ or C# or … ?

I have a personal affinity for C-like languages but maybe you have other thoughts?

Hi @tree,

You can write plug-in for Rhino in either C++ or your preferred .NET language (C# or Visual Basic).

We find most developers leaning towards .NET languages, specifically C#, because plug-in written in this manner will run on both Windows and Mac. Grasshopper plug-ins must be written in .NET, so there is that too.

Plug-in written in C++ can leverage any existing C++ code may have. But C++ plug-ins only run on Windows.

Hope this helps.

– Dale