将Winform数据传输到网络浏览器(Chrome,Mozilla FireFox,Safari等)

时间:2013-12-14 10:42:14

标签: c# winforms browser .net-2.0

我正在尝试将数据从Windows窗体应用程序传输到Web浏览器。我为IE(Internet Explorer)实现了这一点,但现在我正在尝试将此数据传输到所有浏览器,如Chrome,Mozilla Firefox,Safari。

对于IE我使用的是MSHTML.dll,但我不知道要为其他任何浏览器实现它。

以下是我用于IE的代码:

InternetExplorer TargetIE = null;
IHTMLDocument2 document = null;
//Check whether the IE is opened
foreach (InternetExplorer internetExplorer in new ShellWindows())
{
  if (internetExplorer.Document is HTMLDocument)
      {
        TargetIE = internetExplorer;
        break;
      }
}

2 个答案:

答案 0 :(得分:0)

不确定我真的理解你的困惑。我想也许你可以将你的数据格式化为HTML,这是所有浏览器都能识别的,而不仅仅是IE。所以,在你的程序中,你应该注意填充和组织数据到html文件,也许包括一些JavaScript。然后,您可以使用WebBrowser控件在您的应用程序中浏览您的html,其他浏览器也可以访问html。

答案 1 :(得分:0)

使用XPath你可以处理这类东西

using (var wc = new WebClient())
            {
                var page = wc.DownloadString(arguments);
                HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
                doc.LoadHtml(page);
                HtmlAgilityPack.HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//input");
               if (nodes != null)
                {
                    foreach (HtmlAgilityPack.HtmlNode data in nodes)
                    {
                       //Do whatever you want........
                     }
                 }
              } 

还可以从此链接HtmlAgilityPack

下载HtmlAgilityPack dll