1. 程式人生 > 其它 >.NET桌面程式混合開發之一:Winform+H5,WebView2概覽

.NET桌面程式混合開發之一:Winform+H5,WebView2概覽

.NET桌面程式混合開發之一:Winform+H5,WebView2概覽

C#WinformWebView2混合開發Hybrid

1. 基於Microsoft Edge的WebView2介紹

Microsoft Edge WebView2控制元件可以將web技術(HTML,css,javascript)應用於原生程式中。WebView2用Microsoft Edge作為引擎來渲染展示在原生程式中的網頁內容。有了WebView2,就可以在原生程式的多個不同介面嵌入web內容,也可以構建基於單頁面的原生程式。如下圖所示:

如何構建WebView2的應用,點此檢視。

2. 混合應用實踐

開發人員經常被如何選擇原生還是web型別的程式而困擾。而這需要在程式訪問資源‘廣度(reach)’和‘深度(power)’兩者間做取捨。

  • Web應用允許比較廣泛的訪問資源。作為一個Web開發者,多數的程式碼是可以跨平臺的。
  • 要訪問本地資源,則需要用到原生應用。

    混合應用可以融合二者所長:豐富和強大的網路資源+本地資源的深度訪問能力。

3. WebView2的能力

  • Web的豐富生態與技術棧。利用整個Web生態的框架、程式庫、工具、和廣大的從業人才。
  • 快速迭代。Web開發可以快速部署與版本迭代。
  • 相容性好。Win7,8,10上都有一致的使用者體驗。
  • 本地訪問能力。可以訪問整個原生體系的API。
  • 程式碼複用。Web基礎程式碼可以多平臺複用。
  • 微軟支援。微軟提供技術支援並持續新增新特性。
  • 滾動更新發布。可以利用Chromium核心的平臺更新與安全補丁更新機制。
  • 鎖定版本釋出。也可以在應用中打包指定版本號的Chromium核心版本。
  • 豐富的可選外掛。新增外掛到你的應用中。

4. 開始

想要構建和測試基於WebView2的應用,首先得安裝WebView2 SDK。Visual Studio 2019中自帶,如果沒有,可以在Packge Manager控制檯(View-Other Windows-Package Manager Console)執行如下程式碼:

PM> Install-Package Microsoft.Web.WebView2 -Version 1.0
.1054.31

WebView2示例包括WebView2的特性和API的使用方法示例。隨著更多的特性被加入,這個倉的示例也會隨著更新。

5. 支援平臺

通用或預覽版本的WebView2,在以下開發環境中可以支援:

  • Win32 C/C++ (GA)
  • NET Framework 4.5 or later
  • NET Core 3.1 or later
  • NET 5
  • NET 6
  • WinUI 2.0 (Preview)
  • WinUI 3.0
    WebView2的應用可以執行在以下Winows平臺:
  • Windows 11
  • Windows 10
  • Windows 10 IoT Enterprise LTSC x32 2019
  • Windows 10 IoT Enterprise LTSC x64 2019
  • Windows 10 IoT Enterprise 21h1 x64
  • Windows 8.1
  • Windows 7 **
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2008 R2 **