C# GeckoWebBrowser访问不正确的URL,总是弹出消息框

C# GeckoWebBrowser访问不正确的URL,总是弹出消息框,c#,winforms,geckofx,C#,Winforms,Geckofx,找不到www.addssds333fdsd.com.cn。请检查名称,然后重试 GeckoWebBrowser _webA = new GeckoWebBrowser(); _webA.Navigate("www.addssds333fdsd.com.cn"); 当我访问错误的URL时,应用程序将弹出消息框 如何捕获异常或删除消息框。您需要实现nsiproptservcice2和nsIPrompt接口 在那里,您将得到一个方法列表(例如,Alert();),其中没有提供实现。 这将“捕获”

找不到www.addssds333fdsd.com.cn。请检查名称,然后重试

 GeckoWebBrowser _webA = new GeckoWebBrowser();
 _webA.Navigate("www.addssds333fdsd.com.cn");
当我访问错误的URL时,应用程序将弹出消息框


如何捕获异常或删除消息框。

您需要实现nsiproptservcice2和nsIPrompt接口

在那里,您将得到一个方法列表(例如,
Alert();
),其中没有提供实现。 这将“捕获”异常

创建以下类(您将需要为一组方法提供实现,例如Alert、Confirm、Prompt等

public class FilteredPromptService : nsIPromptService2, nsIPrompt
{

    public void Alert(string dialogTitle, string text)
    {
         //do your stuff here
    } 
    //... other methods to follow
}
然后,在浏览器应用程序启动时的某个地方(对于WPF,可能在
Application\u startup()
中),分配提示服务:

PromptFactory.PromptServiceCreator = () => new FilteredPromptService();

另外,请注意,上面的PromptService是静态的,因此这将应用于应用程序中GeckoBrowser的所有实例。

我认为,除了实现这些接口外,我还必须以某种方式设置它们对gecko的引用。如何做到这一点?@VladMatvienko-我将用更多细节更新答案