4

オンライン Web ページではなく、HTML ドキュメントを表示する HTML Render を実行したいと考えています。次に、HTML コントロールをクリックすると、クリックした場所の HTML のみが表示されます。本当の目的は、ルート要素から選択した TAG への xpath を取得することです。

4

1 に答える 1

5

HTML ドキュメントを読み込むにはSystem.Windows.Forms.WebBrowserコントロールを使用する必要があると思います。たとえば、フォームの OnLeftButton イベントをオーバーライドします。そして、WebBrowser.Document.GetElementFromPointメソッドを呼び出します。したがって、このメソッドはHtmlElement型のオブジェクトを返します。結果として、内部の HTML ソース コードに移動したり、選択したタグからタグの階層によって移動したりできる html 要素を取得します;)

私はあなたのためにいくつかの例を作成します:

private static String GetTagNameByClick(WebBrowser refWebBrowser, Int32 valScreenX, Int32 valScreenY)
    {
        Point refPoint = refWebBrowser.PointToClient(new Point(valScreenX, valScreenY));

        HtmlElement refHtmlElement = refWebBrowser.Document.GetElementFromPoint(refPoint);

        return refHtmlElement.TagName;
    }

幸運を!

于 2010-11-19T00:28:17.310 に答える