小编Baf*_*fin的帖子

即使在 CoreWebView2InitializationCompleted 事件发生后,EnsureCoreWebView2Async 也未准备好

根据 Microsoft 在 Windows 窗体中开始使用 webView2(截至 2021 年 3 月 9 日),我得到了以下代码(未设置 webView2.source;从 Form.Designer.cs 中编辑):

    public Form1() {
      InitializeComponent();
      InitializeAsync();
    }

    async void InitializeAsync() {
      Console.WriteLine("InitializeAsync starting");
      await webView2.EnsureCoreWebView2Async(null);
      Console.WriteLine("InitializeAsync done");
    }

    private void Form1_Load(object sender, EventArgs e) {
      Console.WriteLine("Load event");
    }

    private void webView2_CoreWebView2InitializationCompleted(object sender, CoreWebView2InitializationCompletedEventArgs e) {
      Console.WriteLine("CoreWebView2InitializationCompleted event");
      if ((webView2 == null) || (webView2.CoreWebView2 == null))
        Console.WriteLine("not ready");
      webView2.NavigateToString(File.ReadAllText("index.html"));
    }
Run Code Online (Sandbox Code Playgroud)

我很惊讶在 NavigateToString() 处遇到异常:

System.InvalidOperationException
  HResult=0x80131509
  Message=The instance of CoreWebView2 is uninitialized and unable to complete this operation. …
Run Code Online (Sandbox Code Playgroud)

c# winforms webview2

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×1

webview2 ×1

winforms ×1