2010-02-04 5 views
1

저는 C# 응용 프로그램에서 winform에 포함 된 웹 브라우저 컨트롤을 사용하여 일부 긁어 모으기를하고 있습니다. 내가 찾고있는 내용은 동적으로 아약스와 함께로드됩니다. 그러나 페이지로 이동하면 다른 코드가 실행되지 않으면 콘텐츠가로드되지 않습니다. 나는 시도했다WebBrowser 컨트롤 아약스 차단

while(webbrowser1.isBusy); 

그러나 그것은 도움이되지 못한다. 또한 몇 초 동안 프로그램을 일시 중지하여로드 할 시간을 주려고 시도했습니다.

Thread.Sleep(2000); 

아직로드되지 않았습니다. 다음 코드가없는 페이지로 이동하면 잘로드됩니다. 이걸 어떻게 스레드로 나눌 수 있는지 잘 모르겠습니다. 어떤 도움을 주시면 감사하겠습니다.

+0

Document.Complete 이벤트를 처리하고 있습니까? –

+0

그래, 그걸 시도 했어. 나는 시간을 사용하여 그것을 얻었다. –

답변

0

while (webbrowser1.isBusy); 및 Thread.Sleep (2000); 메인 메시지 펌프를 차단하고, ajax는 비동기 콜백을위한 메시지 펌프를 필요로한다. DocumentComplete에서 타이머를 시작하여 페이지가 완료 될 때까지 정기적으로 웹 페이지를 폴링하는 것이 좋습니다. BeforeNavigate2에서 타이머를 중지하는 것을 잊지 마십시오.

+0

예, 이것이 제가 끝내 준 것입니다. –

관련 문제