/// <summary> /// 解析当前Xpath元素 /// </summary> /// <returns></returns> private HtmlElement ParseCurrentXPath() { // GetHtmlNodeByXPath string path = ""; path = WebAutomationHelper.GetElementXPath(currentElement); // MessageBox.Show(path); HtmlElement elem = WebAutomationHelper.ParseElementByXPath(webBrowser1.Document.Body, path); // MessageBox.Show(elem.OuterHtml); return(elem); }
void Document_MouseOver(object sender, HtmlElementEventArgs e) { currentElement = webBrowser1.Document.GetElementFromPoint(e.ClientMousePosition); if (canDrawSelected == true) { Point p = WebAutomationHelper.GetOffset(currentElement); Point pClient = currentElement.OffsetRectangle.Location; int width = currentElement.OffsetRectangle.Width; int height = currentElement.OffsetRectangle.Height; // 画框 Graphics g = Graphics.FromHwnd(m_hwnd); // g.DrawRectangle(m_browserPen, m_elemRect); elemRect = new Rectangle(pClient.X, pClient.Y, width, height); g.DrawRectangle(m_browserPen, p.X, p.Y, width, height); g.Dispose(); rtxtConsoleText.Text += (pClient.X + "," + pClient.Y + "," + width + "," + height) + "\n"; rtxtConsoleText.Select(rtxtSourceCode.TextLength, 0); rtxtConsoleText.ScrollToCaret(); } string path = ""; HtmlElement elem = webBrowser1.Document.GetElementFromPoint(e.ClientMousePosition); path = WebAutomationHelper.GetElementXPath(elem); txtElementXPath.Text = path; currentElementXPath = path; InvokeHelper.Set(txtElementXPath, "Text", path); System.Threading.Thread.Sleep(200); //IHTMLDocument2 document = (IHTMLDocument2)webBrowser1.Document.DomDocument; //IHTMLControlElement htmlElem = (IHTMLControlElement)document.onmousemove; //txtElementCode.Text = IceFormater.ConvertToXml(elem.OuterHtml, true); InvokeHelper.Set(txtElementCode, "Text", HtmlCodeFormat.Format(elem.OuterHtml)); }