1

我正在进行小型 Windows 手机项目。

在这个项目中,我使用一个 WebBrowser 组件(如 Android 中的 WebView)将我公司的移动网站显示为一个应用程序。

每次点击链接后,无论您说什么,我都需要显示进度条/对话框/指示器。

我该如何处理?例如,我将单击新闻链接,然后会向用户显示加载等内容。

更新 :

public partial class MainPage : PhoneApplicationPage
    {
        // Constructor
        public MainPage()
        {
            InitializeComponent();
            Browser.Navigated += new EventHandler<System.Windows.Navigation.NavigationEventArgs>(Browser_Navigated);
            Browser.Navigating += new EventHandler<NavigatingEventArgs>(Browser_Navigating);
            Browser.ScriptNotify += new EventHandler<NotifyEventArgs>(Browser_ScriptNotify);
        }

        void Browser_ScriptNotify(object sender, NotifyEventArgs e)
        {
            Browser.Navigate(new Uri(e.Value, UriKind.Absolute));
        }

        void Browser_Navigating(object sender, NavigatingEventArgs e)
        {
            ProgBar.Visibility = Visibility.Visible;
        }

        void Browser_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e)
        {
            ProgBar.Visibility = Visibility.Collapsed;
        }
    }

我写了这段代码,但它没有显示任何关于进展的信息。

4

1 回答 1

0

您应该使用拦截控件的Navigating事件WebBrowser来启动进度条。

您可以只更改Visibility加载叠加层的属性,例如由半透明RectangleProgressBar.

然后你应该拦截LoadCompleteorNavigationFailed事件并使用它们来删除你的覆盖。

请注意,某些 URL(例如tel:链接)不会触发Navigated事件,因此您可能需要对这些进行特殊处理。

于 2013-04-17T12:44:00.753 回答