我目前正在尝试使用 WPF 完成我的第一个 blazor 桌面应用程序。我唯一缺少的是 WindowStyle="none" WPF MainWindow 的拖动行为。 我找到了以下 git 存储库:https://github.com/AndrewBabbitt97/BlazorDesktop/
作者找到了一种从导航栏拖动窗口的方法,但他使用 Microsoft.Web.WebView2.Wpf,我使用 Microsoft.AspNetCore.Components.WebView.Wpf 开始我的项目,如下所示 https://github.com /edandersen/blazor-desktop-crossplatform-sample/tree/master/src/BlazorWpfApp。有人可以解释一下其中的区别以及我何时应该使用什么吗?
这个问题已经问了一段时间了。然而,我最近遇到了它,因为我也在考虑寻找“Microsoft.AspNetCore.Components.WebView.Wpf”的替代品,因为这个https://github.com/dotnet/maui/issues/ 18908 未解决的问题。
非常简短地回答这个问题:
Microsoft.Web.WebView2.Wpf 用于在 WPF 应用程序中嵌入 Web 内容,利用基于 Microsoft Edge Chromium 的渲染引擎来显示 Web 内容。
Microsoft.AspNetCore.Components.WebView.Wpf 用于在 WPF 中托管 Blazor WebAssembly 应用程序,允许开发人员使用 Blazor 和 .NET 构建基于 Web UI 的桌面应用程序。
如果要使用 WebAssembly 创建 WPF Blazor Blazor 应用程序,则 Microsoft.AspNetCore.Components.WebView.Wpf 是正确的组件。如果只使用服务端渲染,可以使用Microsoft.Web.WebView2.Wpf。