WebView2 的主要類別:環境、控制器和核心
CoreWebView2Environment
、 CoreWebView2Controller
和 CoreWebView2
類別 (或對等介面) 一起運作,讓您的應用程式可以裝載 WebView2 瀏覽器控制項並存取其瀏覽器功能。 這三個大型類別會公開各種 API,讓您的主應用程式可以存取這些 API,為您的使用者提供許多類別的瀏覽器相關功能。
- 類別
CoreWebView2Environment
代表一組共用相同 WebView2 瀏覽器進程、使用者資料檔案夾和轉譯器的 WebView2 控制項。 從這個CoreWebView2Environment
類別中,您會建立 和CoreWebView2
實例的CoreWebView2Controller
配對。 - 類別
CoreWebView2Controller
負責裝載相關功能,例如視窗焦點、可見度、大小和輸入,您的應用程式會在其中裝載 WebView2 控制項。 - 類別
CoreWebView2
適用于 WebView2 控制項的 Web 特定部分,包括網路、導覽、腳本,以及剖析和轉譯 HTML。
跨平臺 API 實作:大部分的 WebView2 API 一開始都是針對 C++ 開發,然後大部分的 C++ API 都會包裝為 C# API。 如此一來,平臺和程式設計語言之間會有一致的平行處理原則和等價。
最上層類別的概觀
概觀:
CoreWebView2Environment
CoreWebView2
-
CoreWebView2Controller
WebView2
與類別 (UI 架構特定的 WebView2 元素類別,例如 WPF、WinForms 或 WinUIWebView2
類別) 。
或者,同樣地:
ICoreWebView2Environment
ICoreWebView2
ICoreWebView2Controller
CoreWebView2Environment
代表一組 WebView2 控制項,這些控制項全都共用下列專案:
- 它們共用相同的 WebView2 瀏覽器程式。
- 他們會共用相同的使用者資料檔案夾。
- 它們可能會共用 WebView2 轉譯器和其他 WebView2 進程。
CoreWebView2Environment
您可以從 建立 CoreWebView2Controller
和 CoreWebView2
配對。 它們一律會以 和對應 CoreWebView2
的 一起 CoreWebView2Controller
使用。
-
CoreWebView2Controller
負責所有裝載相關功能,例如焦點、可見度、大小和輸入。 -
CoreWebView2
適用于 WebView2 控制項的 Web 特定部分,包括網路、導覽、腳本,以及剖析和轉譯 HTML。
UI 架構特定的 WebView2 元素類別,例如 WPF、WinForms 或 WinUI WebView2 類別
如果您使用 UI 架構特定的 WebView2 元素類別,例如 WPF、WinForms 或 WinUI WebView2 類別,則會有所不同。
然後,WebView2 類別可以選擇性地使用 CoreWebView2Environment
,否則會建立預設 CoreWebView2Environment
。 在內部,WebView2 類別會從 CoreWebView2Environment
建立其 CoreWebView2Controller
和 CoreWebView2
。 會 WebView2
將其公開為 CoreWebView2
屬性,但 CoreWebView2Controller
會對 類別保持私用 WebView2
CoreWebView2
。 這是因為 類別 WebView2
負責將所有 CoreWebView2Controller
功能連線到 UI 架構。