0

我有一个看起来像这样的 C# WebResponse 流:

<script language=JavaScript> 
document.write('<head>');
document.write('<title> Testing </title>');
document.write('</head>');
</script>

我想把它放到一个 WebBrowser 控件中,我该怎么做?WebBrowser1.DocumentStream = 流;什么也没做...

我在做什么:

WebResponse response = request.GetResponse();
stream = response.GetResponseStream();
WebBrowser WebBrowserResponse = new WebBrowser();
WebBrowserResponse.DocumentStream = stream;
Console.WriteLine(WebBrowserResponse.DocumentText);

这不起作用。

答案是(我还不能回答我自己的问题)谢谢大家:

string s = sr.ReadToEnd();
WebBrowserResponse.Navigate("about:blank");
WebBrowserResponse.Document.OpenNew(false);
WebBrowserResponse.Document.Write(s);
WebBrowserResponse.Refresh();
WebBrowserResponse.DocumentCompleted += (sndr, ex) =>
{
Console.WriteLine(WebBrowserResponse.DocumentText);
};
4

2 回答 2

1

将流分配给浏览器后,您正在尝试获取内容。你应该等待DocumentCompleted事件。

试试这个:

webBrowser1.DocumentCompleted += (sndr, e) =>
{
     Console.WriteLine(webBrowser1.DocumentText);
};

顺便说一句:您将流分配给WebBrowser1,但从WebBrowserResponse

于 2013-07-19T16:15:01.237 回答
-1

耶,我明白了!

string s = sr.ReadToEnd();
WebBrowserResponse.Navigate("about:blank");
WebBrowserResponse.Document.OpenNew(false);
WebBrowserResponse.Document.Write(s);
WebBrowserResponse.Refresh();
WebBrowserResponse.DocumentCompleted += (sndr, ex) =>
{
Console.WriteLine(WebBrowserResponse.DocumentText);
};

谢谢大家!

于 2013-07-20T16:09:09.957 回答