禁止在GeckFX45中找到“yourdomain.com找不到”对话框

问题描述 投票:0回答:1

我正在使用NuGet的GeckFX45为我的OAuth2登录主持一个网页。在测试没有互联网连接的行为时,我注意到我得到了一个浏览器生成的对话框,说明找不到该URL。我怎样才能抑制这种情况,我可以在不警告用户的情况下捕获并处理我的应用中的场景?

我的浏览器代码是非常标准的,但无论如何包含在这里的参数(注意我使用WPF而不是Win Forms因此主机控件):

    public OAuthLogin2(OAuthActions action, string args = null)
    {
        this.action = action;

        Gecko.Xpcom.Initialize("Firefox");
        host = new WindowsFormsHost();
        browser = new GeckoWebBrowser();
        browser.DocumentCompleted += Browser_DocumentCompleted;
        browser.Navigating += Browser_Navigating;

        browser.NavigationError += Browser_NavigationError;
        browser.NSSError += Browser_NSSError;

        InitializeComponent();

        host.Child = browser;
        GridWeb.Children.Add(host);
    }
c# wpf geckofx
1个回答
0
投票

我可以添加一个PromptService,但这可能不起作用取决于语言;

    public class NoPromptService : PromptService
    {
        public override void Alert(string dialogTitle, string text)
        {
            log.Warn(dialogTitle, new Exception(text));
            if (text.EndsWith("could not be found. Please check the name and try again."))
            {
                // Do Whatever
            }
        }
    }

在构造函数中添加:

PromptFactory.PromptServiceCreator = () => new NoPromptService();
© www.soinside.com 2019 - 2024. All rights reserved.