WinForms死于Microsoft.Toolkit.Win32.UI.Controls.WinForms.WebView

时间:2018-10-15 14:53:44

标签: c# winforms webview toolkit

我试图将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/

上的说明进行操作

为什么这不起作用?

3 个答案:

答案 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)