2012-04-02 5 views
8

WPF 웹 브라우저의 LoadCompleted 이벤트를 듣고 있습니다. 탐색과 관련된 세부 정보를 제공하는 탐색 항 목이 있습니다. 그러나 e.Content은 항상 null입니다.WPF webbrowser - HTML 다운로드

여기 잘못된 이벤트에주의를 기울이고 있습니까? 방금 다운로드 한 HTML을 문자열로 가져올 수 있습니까?

나는 some things which I would consider hacks을 시도했지만 다운로드 한 문자열이 아니더라도 HTML 문자열을 반환합니다. 예를 들어, 그 방법을 사용하면 그냥 abc 문자열을 보내는 페이지로 이동하면 결과는 <document><body>abc</body></document> 또는 이와 비슷한 결과를 얻습니다.

나는이 실행을 위해 nescessary 이상의 해킹을하지 않는 것을 선호합니다.

답변

17

이 이벤트는 최상위 수준의 탐색에서만 발생하며, 이는 아마도 초기 문제의 원인 일 수 있습니다.

언급 한 접근 방식은 전혀 해킹이 아니며 다운로드 한 문서의 HTML 텍스트 (모든 태그 포함)를 반환하는 공식 API입니다.

dynamic doc = webBrowser.Document; 
var htmlText = doc.documentElement.InnerHtml; 

당신이 당신의 HTML 문서에서 일반 텍스트를 얻고 싶은 경우, 그 작업을 수행하는 방법 simple explanation있다.

+0

WindowsFormsHost 컨트롤에서 WinForms WebBrowser를 거의 사용하려고했는데, 이는 훨씬 많은 속성을 노출했기 때문입니다. 그러나 이것은 훌륭하게 작동했습니다. –

+1

왜 그들은 '동적'변수를 사용하기로 결정 했습니까? –

관련 문제