我试图将WebView添加到WinForm,以便在应用程序中使用现代浏览器。
从空白的WinForm开始,我添加了代码以创建WebView并将其添加到表单的控件中。
using System;
using System.ComponentModel;
using System.Windows.Forms;
namespace TestWebView
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
var wvc = new Microsoft.Toolkit.Win32.UI.Controls.WinForms.WebView();
((ISupportInitialize)wvc).BeginInit();
wvc.Dock = DockStyle.Fill;
Controls.Add(wvc);
((ISupportInitialize)wvc).EndInit();
// You can also use the Source property
wvc.Navigate(new Uri("https://www.microsoft.com"));
}
}
}
这将编译并运行,但是EndInit()调用未完成。 没有异常被抛出。呼叫进入但没有离开。
该项目设置为.NET Framework 4.7.1。我使用NuGet Manager将Microsoft.Toolkit.WIn32.UI.Controls v4.0.2添加到项目中。我正在按照https://blogs.windows.com/msedgedev/2018/05/09/modern-webview-winforms-wpf-apps/
上的说明进行操作为什么这不起作用?
答案 0 :(得分:1)
我以管理员身份运行Visual Studio。
如果我正常运行VS,则WebView可以工作。
因此,现在我遇到了另一个问题:如何以管理员身份运行WebView?
感谢Steve和Jimi的有用评论。
答案 1 :(得分:0)
您可能需要从下面下载最新版本v5
https://github.com/windows-toolkit/WindowsCommunityToolkit/releases/tag/v5.0.0
4.0.3现在已过时,看起来像Windows 10更新中断了API。上面的链接适用于Windows 10 Build 17110或更高版本
答案 2 :(得分:0)