我在.net6.0中创建了一个简单的WPF客户端应用程序,并结合了WebView2控件。我将这个应用程序部署/复制到另一台机器上,并在那里安装了.NET6.0运行时。在运行这个应用程序时,我只看到主窗口,没有初始化/创建WebView2。注意,在我的dev机器上使用的实现也是相同的。
public MainWindow()
{
InitializeComponent();
InitializeWebView2();
}
private async Task InitializeWebView2()
{
//myPanel.Children.Add(webView2);
//await webView2.EnsureCoreWebView2Async();
((Action)(async () =>
{
try
{
CoreWebView2Environment env = await CoreWebView2Environment.CreateAsync(null, "another_dir");
WebView2 webview = new WebView2();
/*
webview.Source = new Uri("https://www.bing.com");
*/
var result = webview.EnsureCoreWebView2Async(env).GetAwaiter();
result.OnCompleted(() =>
{
try
{
result.GetResult();
}
catch (Exception e)
{
Console.WriteLine(e);
}
});
myPanel.Children.Add(webview);
webview.NavigateToString("https://google.com");
}
catch (Exception e)
{
Console.WriteLine(e);
}
})).Invoke();
}发布于 2022-10-14 13:11:09
应该在设置EnsureCoreWebView2Async之前等待Source
private async Task InitializeWebView2()
{
var webview = new WebView2();
myPanel.Children.Add(webview);
var env = await CoreWebView2Environment.CreateAsync(null, "another_dir");
var result = await webview.EnsureCoreWebView2Async(env);
webview.Source = new Uri("https://www.bing.com");
}https://stackoverflow.com/questions/74055430
复制相似问题