Aguardando conteúdo ajax do WebBrowser
Quero pausar a execução do meu thread até que uma determinada div seja carregada via ajax em uma instância do WebBrowser. Obviamente, posso verificar continuamente a presença dessa div fazendo algo como:
while (Browser.Document.GetElementById("divid") == null) { Thread.Sleep(200); }
No entanto, a suspensão do encadeamento em que o navegador está entre os loops apenas bloqueia o navegador de realmente carregar o conteúdo em primeiro lugar. Parece, portanto, que preciso executar oBrowser.Navigate
método em um thread separado - posso continuar / verificar a presença da div enquanto a instância do WebBrowser continua carregando o URL que solicitei.
Minhas tentativas para isso, no entanto, falharam e eu valorizaria qualquer opinião sobre como devo fazer isso. Eu pensei em simplesmente enviar um novo tópico comnew Thread(() => { Browser.Navigate(url); });
funcionaria, mas depois disso, nada é carregado e o Browser.ReadyState permanece como 'Não Inicializado'. Eu presumo que estou entendendo mal como proceder para encadear corretamente procedimentos como este com C # e gostaria de receber alguns conselhos!