0

我有一个使用 Web 浏览器控件来浏览网站的应用程序。当用户单击将他们带出站点的超链接时,我希望能够停止导航。我试过了。

void wgBrowser_Navigating(object sender, NavigatingEventArgs e)
{
        if (!e.Uri.AbsoluteUri.Contains(BASEURL))
        {
            e.cancel = true;

            return;
        }
        progressPB.Visibility = Visibility.Visible;
}

这实际上会停止导航,但会终止页面,从而导致导航错误消息出现在网络浏览器中。

我已经尝试了一些东西,包括导航后的 wgBrowser.Goback() ,但这不是真正的“返回”,并导致页面重新加载用户之前输入的完全丢失的数据。

任何帮助将不胜感激。

谢谢。

4

2 回答 2

0

你试过了IsolatedStorageSettings吗?因为IsolatedStorageSettings在页面导航时使用存储数据会更好。

例子:

private void tbUserName_SelectionChanged(object sender, RoutedEventArgs e)
{
            if (appSetting2.Contains("MainPage2"))
            {
                appSetting2["MainPage2"] = this.tbUserName.Text;
            }
            else
            {
                appSetting2.Add("MainPage2", this.tbUserName.Text);
            }
}
于 2013-03-21T08:29:18.237 回答
0

使用可以使用InvokeScreiptover WebBrowsercontrol的方法来停止页面导航。

yourWebBrowser.InvokeScript("eval", "document.execCommand('Stop');");
于 2014-05-20T10:13:34.067 回答