我有一个wpf应用程序,因为我有一个文本框,在其中输入url并在web浏览器控件中获取该网页。请考虑“常规”例如,如果我在wpf应用程序的web浏览器控件中打开任何网页,我希望从该web浏览器控件获取所有文本并在文本框中显示它。从那个文本框我可以把它导出到任何文件。我现在需要有关如何从web浏览器控件获取所有数据,然后将其放入多行文本框中的信息。
最佳答案
您可以使用System.net中的httpwebrequest和httpwebresponse对象与Web服务器通信。
例如
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。您可以使用
BackgroundWorkerThread
来执行此操作。