C# 使用Web浏览器控件按类名获取div的内容?

C# 使用Web浏览器控件按类名获取div的内容?,c#,.net,C#,.net,我有一个带有webBrowser1控件的表单,用于加载在其HTML部分包含以下行的页面: ... <div class="cls"> Hello World ! </div> 但是上面的代码似乎不起作用,据我所知 首先引起我注意的是:没有定义div元素的名称,它定义了它的CSS样式类。相反,请使用属性名(或两者都使用),例如: 如果只有class属性,如何获取div元素的innerText 非常感谢您的帮助。将runat=“server”和ID属性添加到div中

我有一个带有
webBrowser1
控件的表单,用于加载在其HTML部分包含以下行的页面:

 ...
 <div class="cls">
 Hello World !
 </div>
但是上面的代码似乎不起作用,据我所知

首先引起我注意的是:
没有定义
div
元素的名称,它定义了它的CSS样式类。相反,请使用属性名(或两者都使用),例如:

如果只有
class
属性,如何获取
div
元素的
innerText

非常感谢您的帮助。

runat=“server”
ID
属性添加到
div
中,如下所示:

 …
 <div class="cls" ID="hello_div" runat="server">
 Hello World !
 </div>

您应该使用
ClassName
而不是
class

 if (el.GetAttribute("className") == "cls") { … }

有关详细信息,请参见。

我不能这样做。我无法访问html文档在回答任何问题时都会添加解释
string result = hello_div.InnerText; // or InnerHtml
 if (el.GetAttribute("className") == "cls") { … }
        HtmlDocument doc = webBrowser1.Document;
        HtmlElementCollection divs = doc.GetElementsByTagName("div");

        foreach (HtmlElement div in divs)
        {
            try
            {
                var info = div.DomElement;
                PropertyInfo[] pi = info.GetType().GetProperties();

                string strClass = pi[0].GetValue(div.DomElement).ToString();

                if (strClass == "cls")
                {
                        //DoStuff
                }
            }
            catch
            {

            }
        }