.NET混合開發解決方案7 WinForm程式中通過NuGet管理器引用集成WebView2控制項

  WebView2組件支援在WinForm、WPF、WinUI3、Win32應用程式中集成載入Web網頁功能應用。本篇主要介紹如何在WinForm程式中集成WebView2組價的詳細過程。

準備工作

1、安裝Visual Studio,建議安裝Visual Studio 2022 。

2、安裝 WebView2 運行時。下載地址://developer.microsoft.com/zh-cn/microsoft-edge/webview2

     關於WenView2運行時版本資訊,請參考我的部落格《.NET桌面程式應用WebView2組件集成網頁開發5 WebView2運行時與分發應用》

步驟1 新建WinForm項目

第①種項目支模板持.NET Core、.NET5、.NET6等。

第②種項目模板僅支援.NET Framework。

這裡選擇第一種項目模板。

驟2 安裝 WebView2 SDK

NuGet中搜索WebView2

提供了如下詳細的版本

  

如果用於生產環境,建議使用穩定版(沒有標記-prerelease),學習研究時可以使用預發行版。

選擇最新穩定版進行安裝,安裝成功後,項目的包中添加了 1.0.1185.39 版本的 SDK。

步驟3  設置頁面功能

1、頂部區域放置了一個文本框,用於輸入目標網址。右側「訪問」按鈕用於導航到目標網址。

2、頂部區域WebView2控制項用於載入目標網址內容。

步驟4 實現導航邏輯

運行效果如下:

兩種導航方式都可以成功

webView2.CoreWebView2.Navigate(url);
webView2.Source = new Uri(url);

特別提醒:輸入的URL地址,如果不是以// 或者// 開頭則會運行報錯

點擊【訪問】按鈕

異常: 無效的URI:無法確定URI的格式。

異常:值不在預期範圍內。

更友好的做法是自動判斷,並補全URL前綴

再次測試