0

我在 C# 中创建了一个小的 Win Form App 并添加了 WebBrowser 组件。我想要实现的是一个小应用程序,它可以从其中包含“自定义”协议的文件加载本地 html 页面,当然也可以导航到网址。

例如,我会在我的网页中有如下条目

'<a href="Special://905">Close&nbsp;Company</a></TD></TR>'这将在程序中打开一个任务。

我试图实现这一点的方式是通过如下所示的导航事件

       private void webBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e)
       {
        if ((webBrowser.StatusText.Contains("Special")))
         {
            //For some reason the stop doesn't do much it still tries to proceed to special:123
            //diplaying can not load page..
            webBrowser.Stop();

            //Launch program here.
            MessageBox.Show("Special Command Found");
         }
       }

问题是它仍然导航并说它当然找不到页面。我将 Stop 与 GoBack 交换,由于某种原因,我第一次运行它时遇到了同样的问题,然后当我在浏览器中向后选择时,它从那里开始工作。

我还尝试了导航和使用 GoBack,除了在应用程序中闪退之外,该事件在第一次之后不再触发。

有没有人知道如何解决这个问题或我在这里做错了什么?

4

1 回答 1

2

而不是使用 WebBrowser.Stop(); 只需设置 e.cancel = true;

于 2013-05-06T13:00:42.483 回答