无法找到" yourdomain.com" GeckFX45中的对话框

时间:2018-06-01 13:22:28

标签: c# wpf geckofx

我正在使用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);
    }

1 个答案:

答案 0 :(得分: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();