Settings

Theme

Ask HN: What UI framework to choose for a greenfield LOB Windows-only app?

6 points by noseratio · 7 comments · 1 min read


Looking for opinions, thank you. It may sound funny in 2021, but I'm inclined to use WinForms.

3 threads
the_only_law

Shit, I’m completely with you on WinForms. It works, it’s simple, and native.

WPF is almost nice. I’ve enjoyed it especially when trying to make crazy looking UI’s, but I can’t bring myself around to because of the god awful methods for styling components.

  • noseratioOP

    Thanks for your thoughts! I've been mostly involved with Electron lately and I'm a believer in all-HTML UI. For this project though, Electron was ruled out.

    • the_only_law

      I've actually come to understand the appeal of Electron recently. CSS is an amazing tool for styling and something like WPF + CSS would be a great tool IMO if it existed.

      • noseratioOP

        Maybe some styling tool similar to CSS exists in modern XAML/WinUI3? I must admit, I haven't followed that space much recently.

Someone1234

Controversial take: Electron.

For background: I cut my teeth on Windows Forms and then WPF later (both VB6 and C# .Net then Core). So I am not anti-Microsoft/Windows specific technologies, and both WinForms and WPF still work just fine. If you already have them in production, keep going. The discussion here is greenfield.

Why do I lean Electron in 2021?

- Better migration paths/exits (e.g. Business wants a web/intranet version? Incredibly easy/cheap migration). ASP.NET would allow some code reuse from WinForms/WPF, but we're mostly talking about DAL/DOMAIN/BLL, UI is a full re-write (Blazor is also a full UI re-write, as the structure is different from WinForms and or WPF).

- More/cheaper talent.

- Larger availability of libraries (inc. better official third party integration libraries & support).

- Testing and or infrastructure as code as core components rather than afterthoughts/tack-ons.

- If you ever want to support other desktop or mobile platforms it goes from an improbable project with WinForms/WPF to a fairly manageable one (not free, still requires testing/tweaks, but even .NET 5.0 doesn't have a fantastic all-platform UI story, aside from web/ASP.Net).

Sad part is that I don't even like JavaScript/Node.js/Electron very much, but yet the whole package in 2021 is extremely difficult to ignore. Plus in my limited experience almost all LOB eventually grow until they become web-apps of one type or another.

noseratioOP

Ranted about this choice previously: https://dev.to/noseratio/the-signs-of-wpf-currently-being-on...

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection