我有一个 wpf 应用程序,因为我有一个文本框,我在其中输入 url,我正在 Web 浏览器控件中获取该网页。例如,如果我在 wpf 应用程序中的 Web 浏览器控件中打开任何网页想要从该 Web 浏览器控件中获取所有文本并将其显示在文本框中。从该文本框中,我可以将其导出到任何文件中。我现在需要有关如何从 Web 浏览器控件中获取所有数据然后将其放入多行文本框中的信息。
问问题
3243 次
1 回答
1
您可以使用 System.Net 中的 HttpWebRequest 和 HttpWebResponse 对象与网络服务器进行通信。
例如
string GetWebPage(string address)
{
string responseText;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (StreamReader responseStream = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("utf-8")))
{
responseText = responseStream.ReadToEnd();
}
}
return responseText;
}
然后,您可以使用以下方法设置文本框的文本:
myTextBox.Text = GetWebPage(address);
为了更好地为您的用户服务,您应该使 Web 请求异步,这样您就不会在数据下载时锁定 UI。您可以使用 aBackgroundWorkerThread
来执行此操作。
于 2012-06-01T12:57:46.130 回答