从Web浏览器页面获取数据到wpf应用程序

时间:2012-06-01 09:22:38

标签: c# http browser

我有一个wpf应用程序,我有一个文本框,我在其中输入网址,我在网页浏览器控件中获取该网页。请注意,例如,如果我在网页浏览器控件中打开任何网页wpf应用程序我想从该Web浏览器控件中获取所有文本并将其显示在文本框中。从该文本框我可以将其导出到任何文件中。我现在需要有关如何从Web浏览器控件获取所有数据然后将其放入多行文本框的信息。

1 个答案:

答案 0 :(得分:1)

您可以使用System.Net中的HttpWebRequest和HttpWebResponse对象与网络服务器进行通信。

e.g。

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来执行此操作。