我想在 Webbrowser 中获取被点击元素的 HTML Id。

例子:
如果我点击 Google 搜索按钮,它应该给我点击元素的 HTML ID(在这种情况下是一个按钮)

我应该如何做到这一点?

编辑:Webbrowser = Web 浏览器控件

最佳答案

如果是用于 Web 浏览器控件,那么本文将解释如何操作:https://www.codeproject.com/Articles/32279/How-To-Tell-What-is-Clicked-in-a-WebBrowser-Contro

首先,我们需要将屏幕上的鼠标坐标转换为 Point 对象:

Point ScreenCoord = new Point(MousePosition.X, MousePosition.Y);

现在,我们必须根据屏幕坐标创建浏览器的坐标:
Point BrowserCoord = webBrowser1.PointToClient(ScreenCoord);

现在我们可以使用 WebBrowser 文档 GetElementFromPoint 方法来检索被点击的元素:
HtmlElement elem = webBrowser1.Document.GetElementFromPoint(BrowserCoord);

现在,我们可以使用这个元素来查看点击了什么:
switch (elem.TagName) {
case "A": //! We have clicked a link
break;
case "IMG": //! We have clicked an image
break;
default: //! This is anywhere else
break;
}

关于c# - .Net 如何在 Web 浏览器中获取被点击元素的 ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41293979/

10-15 17:25