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。 这样,平台和编程语言之间就具有一致的并行度和等效性。
顶级类概述
概述:
CoreWebView2EnvironmentCoreWebView2- 
              
CoreWebView2ControllerWebView2与 (UI 框架特定的 WebView2 元素类(如 WPF、WinForms 或 WinUIWebView2类) )的类。 
或者,等效:
ICoreWebView2EnvironmentICoreWebView2ICoreWebView2Controller
              CoreWebView2Environment 表示一组 WebView2 控件,所有控件共享以下内容:
- 它们共享相同的 WebView2 浏览器进程。
 - 它们共享相同的用户数据文件夹。
 - 它们可能会共享 WebView2 呈现器和其他 WebView2 进程。
 
在 中 CoreWebView2Environment,创建 CoreWebView2Controller 和 CoreWebView2 配对。  它们始终作为 CoreWebView2Controller 和相应的 CoreWebView2走到一起。
- 
              
CoreWebView2Controller负责所有与托管相关的功能,例如焦点、可见性、大小和输入。 - 
              
CoreWebView2用于 WebView2 控件的特定于 Web 的部分,包括网络、导航、脚本以及分析和呈现 HTML。 
UI 框架特定的 WebView2 元素类,例如 WPF、WinForms 或 WinUI WebView2 类
如果使用 UI 框架特定的 WebView2 元素类(例如 WPF、WinForms 或 WinUI WebView2 类),则情况会有所不同。
然后,WebView2 类可以选择使用 CoreWebView2Environment ;否则,它会创建默认 CoreWebView2Environment的 。  在内部,WebView2 类从 CoreWebView2Environment创建其 CoreWebView2Controller 和 CoreWebView2 。
将其公开为属性,但 CoreWebView2Controller 对 类保持私有WebView2。CoreWebView2CoreWebView2WebView2  这是因为 类 WebView2 负责将所有 CoreWebView2Controller 功能连接到 UI 框架。