我们很高兴地宣布,DotNetBrowser 中的 Chrome 扩展程序现已公开预览!

本文简要概述了如何在 DotNetBrowser 中安装和使用扩展程序。

DotNetBrowser 中的 uBlock 扩展

在 DotNetBrowser 中启动的扩展程序

在 Web View 中使用 Chrome 扩展程序,无需任何费用即可为您的软件增添众多新功能。通过这些扩展程序,不仅可以屏蔽广告、提升可访问性,还可以使用 JavaScript 库的开发工具等,以及其他更多实用功能。

克隆演示应用程序 

获取演示应用程序的方法如下:

  1. 克隆 DotNetBrowser-Examples 仓库。

    git clone https://github.com/TeamDev-IP/DotNetBrowser-Examples.git
    
  2. 切换到 extensions-preview 分支:

    git checkout 3.x.x
    
  3. 要获取免费的 30 天试用许可证,请填写表单,之后,您将会收到一封包含许可证密钥的电子邮件。

Spinner

发送中。。。

抱歉,发送中断

请再次尝试,如果问题仍然存在,请联系我们 info@teamdev.com.

阅读并同意条款以继续。

您的个人 DotNetBrowser 试用密钥和快速入门指南将在几分钟内发送至您的电子邮箱。

  1. 将您的许可证密钥放入存储库根目录中的 dotnetbrowser.license 文件中。
  2. 在 Visual Studio 2019 或更新版本中打开解决方案。
  3. 在 “Solution Explorer” 中右键单击解决方案, 然后选择 “Restore NuGet Packages”。
  4. 构建解决方案并运行 Extensions 项目。

在现有项目中使用 

如果您已经在使用 DotNetBrowser,您可以从 NuGet 获取预览版本。

dotnet add package DotNetBrowser -v "v3.0.0"
dotnet add package DotNetBrowser.WPF -v "v3.0.0"

安装扩展程序 

安装扩展程序很简单:

// 扩展程序文件的路径。
string crx = Path.GetFullPath("path/to/extension.crx");

// 安装扩展程序并等待安装完成。
var extensions = engine.Profiles.Default.Extensions;
IExtension extension = await extensions.Install(crx);

与扩展程序交互 

每个扩展程序在 Chrome 工具栏中都有一个图标。当用户点击该图标时,扩展程序通常会执行某些操作。例如,它可能会显示一个小型弹出窗口,或者静默地更改页面的内容。

在 DotNetBrowser 中,没有可点击的工具栏或图标。因此,我们提供了 API 来从代码中 “点击图标”:

extension.GetAction(browser).Click();

如果扩展程序想要显示一个弹出窗口,DotNetBrowser 会将其打开为新窗口。但您可以更改这种行为。

扩展程序的弹出窗口是一个常规的 IBrowser 实例。因此,您可以执行任何操作:您可以选择在现有窗口内显示它,也可以将其设置为透明,甚至可以将其转换为模态对话框。当然,您也可以选择完全不显示它。

在此示例中,我们不显示弹出窗口,而是执行一些自动化操作:

using DotNetBrowser.Browser.Handlers;
...
Browser.OpenExtensionActionPopupHandler = 
    new Handler<OpenExtensionActionPopupParameters>(p =>
    {
        IBrowser popupBrowser = p.PopupBrowser;
        // 一旦框架加载完成,自动执行必要的操作。
        PopupBrowser.Navigation.FrameLoadFinished += (s, e) =>
        {
            if (e.Frame.IsMain)
            {
                // 点击按钮开关。
                e.Frame.GetElementById("switch").Click();
            }
        };
    });

提供您想要检测的扩展程序 

将 Chrome 扩展程序集成到 DotNetBrowser 中,是向前迈出的重要一步,为增强 .NET 应用程序提供了更多的可能性。随着此次更新,我们热切地邀请广大开发者们前来探索,并分享你们的宝贵反馈和建议。

,并告诉我们您希望使用哪些扩展程序。