locked
Как узнать, что страница в WebBrowser Control полностью загрузилась? RRS feed

  • Вопрос

  • Доброго времени суток.

     Например, у нас есть такой код:

    Browser.IsScriptEnabled = true; Browser.Navigated += new EventHandler<System.Windows.Navigation.NavigationEventArgs>(Browser_Navigated); Browser.Navigate(new Uri("http://site.com", UriKind.Absolute));

    void Browser_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e)

    { Browser.InvokeScript("my_script"); }

    Событие Navigated возникает после перехода по адресу, указанному в Navigate().

    Но если выполнить этот код возникнет ошибка:

    "An unknown error has occurred. Error: 80020006."

    на строке:

    Browser.InvokeScript("my_script");

    Такая ошибка может возникать, если страница еще полностью не загрузилась, а мы уже пытаемся выполнить javascript код.

    Если перед строчкой поставить Thread.Sleep(5000), то все нормально, этой паузы хватает и скрипт выполняется.

    Как можно отследить, что страница полностью загружена, чтобы после этого выполнить .InvokeScript() ?

    Заранее спасибо.


    30 января 2013 г. 16:25

Ответы

Все ответы