Use the mvvm [0] toolkit, it is good! That way you decouple your view (<= gui toolkit) from your (view)model.<p>It works with Avalonia, WPF and should work with Winui3, Uno etc too. Avalonia is being used by some pretty impressive applications btw, check that one out too. (I have no affiliation).<p>Avalonia (+ .net) is the reason why I think that is the best stack for any desktop application or util, because utils eventually gain a gui. Imho a far better choice than Python or JS in most cases.<p>As an aside, I don't understand why the Java players do not put more emphasis on JavaFX. Would be the ultimate choice for people that are wary about the MS affiliation.<p>___<p>0. <a href="https://learn.microsoft.com/en-us/dotnet/communitytoolkit/mvvm/" rel="nofollow">https://learn.microsoft.com/en-us/dotnet/communitytoolkit/mv...</a>