30
loading...
This website collects cookies to deliver better user experience
The WPF roadmap itself (or, pretty much, the lack of it, if compared to that of WinForms). According to this document, the only ongoing effort is "incorporating .NET Framework servicing fixes into .NET Core 3.1 and .NET 5".
"Is this repo dead" issue in the WPF repo. Lots of interesting comments in that thread, particularly, this one:
The real reason was already communicated on community calls over on YouTube. The team was merged with WinUI and created from zero, apparently everyone from the original team is gone, and the new team is very resource constrained so they don't manage to deliver more than a couple of fixes. Now we can complain that instead of doing WPF, WinUI, MAUI, Blazor on Electron (what a bad idea!) they should focus on just having one UI-vnext framework, but after UWP failure, they don't seem to be able to decide what to do, each group talks differently about the "vision".
Some folks in that thread even voiced initiatives to fork WPF and maintain it independently of Microsoft.
Microsoft's Igor Velikorossov on what's new in Windows Forms:
It's great to see WinForms being actively maintained, but what about WPF? Check out the grieving readers' comments. Back then, Microsoft's PM Premalini David replied with a promise of boosting up the WPF team internal resources. Looking at the WPF repo commit history now, that doesn't seem to have been happening yet.
"What's new in WPF for .NET 5" on docs.microsoft.com. Actually, this page doesn't exist for .NET 5, it falls back to the .NET Framework 4.x content, when you choose ".NET 5". Besides some information on adding ARM CPU support, I couldn't find any details about what's new in WPF since it got ported to .NET Core 3 in 2019.
On a side note, the "what's new" section does exist for .NET 5 Windows Forms.
WebBrowser
control. As of now, this is far from being the case, either:Rick Strahl's blog post about his titanic efforts on integrating WebView2 into his WPF-based Markdown Monster Editor:
https://weblog.west-wind.com/posts/2021/Apr/15/WebView2-Forwarding-Alt-Keys-to-a-Host-WPF-Window.
My own struggle with WPF + WebView2 keyboard and focus issues:
https://github.com/MicrosoftEdge/WebView2Feedback/issues/468#issuecomment-855810839. I believe that can't be properly resolved without making changes on the WPF side.
BlazorWebView
, supported on WinForms, WPF and .NET MAUI:Using Blazor and a hybrid approach you can start decoupling your UI investments from WPF & Windows Forms. This is a great way to modernize existing desktop apps in a way that can be brought forward onto .NET MAUI or used on the web. You can use Blazor to modernize your existing Windows Forms and WPF apps while leveraging your existing .NET investments.
BlazorWebView
with a simple WinForms-based app, and currently (as of NET 6 Preview 7) it doesn't feel close to the production quality yet. Nevertheless, BlazorWebView
is an impressive piece of technology, I hope it will mature and won't be abandoned.it is old and battle-tested but still being actively maintained (unlike WPF, presently);
has a simple, unopinionated and well-know API;
uses native Win32 UI controls under the hood and therefore …
… is easy to integrate with other native and managed controls or modernize with WebView2
, BlazorWebView
and/or XAML Islands. I'd expect fewer issues with the focus/keyboard interop as well, or at least, they should be easier to address, than with WPF.
can be abstracted behind something simple, like Model-View-Presenter Pattern, or something advanced, like Reactive UI;
can be deployed as a single EXE (~75MB) without needing admin rights, Windows Store, packaging, sideloading, tweaks to the Windows Developer settings, etc (updated: trimming no longer work in .NET 6 for WinForms/WPF):
dotnet new winforms -n app
dotnet publish app -r win-x64 -c Release --self-contained true -p:PublishSingleFile=true -p:PublishTrimmed=True -p:IncludeNativeLibrariesForSelfExtract=true -p:TrimMode=Link
dir /s app.exe