C # - WP7 WebBrowser Навигационный обработчик событий - PullRequest
1 голос
/ 12 ноября 2011

Я не могу понять, как перехватить событие Navigating в элементе управления WebBrowser.В основном я пытаюсь выяснить, как вызвать индикатор выполнения, когда пользователь нажимает на ссылку на странице.

Вот код, который я использую, чтобы показать индикатор выполнения, а затем скрыть его на загруженной странице.Может кто-нибудь помочь мне с обработчиком событий для навигации?

    private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
    {
        progressBar.IsIndeterminate = true;
        progressBar.Visibility = Visibility.Visible;
        webBrowser.Navigate(new Uri(MY_URL, UriKind.Absolute));
        webBrowser.LoadCompleted += new System.Windows.Navigation.LoadCompletedEventHandler(PageLoadCompleted);
        webBrowser.Navigating = ?
    }
    private void PageLoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
    {
        progressBar.IsIndeterminate = false;
        progressBar.Visibility = Visibility.Collapsed;
    }

Ответы [ 2 ]

1 голос
/ 12 ноября 2011

Документация, которую вы ищете здесь .Вы можете написать

webBrowser.Navigating += webBrowser_Navigating;
// ...

void webBrowser_Navigating( object sender, NavigatingEventArgs e )
{
  // ...
}
0 голосов
/ 13 июня 2012

Ответ от VisualStuart помог мне решить мою проблему.

Мой теперь рабочий код выглядит так:

private void MyButton1_Click(object sender, RoutedEventArgs e)
{
    MyprogressBar.IsIndeterminate = true;
    MyprogressBar.Visibility = Visibility.Visible;
    string site = MyTextBox1.Text;
    webBrowser1.Navigate(new Uri(site, UriKind.Absolute));
    webBrowser1.Navigating += webBrowser1_Navigating;
    webBrowser1.LoadCompleted += new System.Windows.Navigation.LoadCompletedEventHandler(webBrowser1_LoadCompleted);
}

private void webBrowser1_Navigating(object sender, NavigatingEventArgs e)
{
    MyTextBox1.Text = e.Uri.ToString();
    MyprogressBar.IsIndeterminate = true;
    MyprogressBar.Visibility = Visibility.Visible;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...