|
WebBrowser中html元素如何触发winform事件? 这个问题来自论坛提问,对dom稍微了解的话还是比较简单的,只要注册一下事件就可以了。
C#代码如下:
using System;
using System.ComponentModel;
using System.Windows.Forms;

namespace WindowsApplication5
 ...{
public partial class Form1 : Form
 ...{
public Form1()
 ...{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
 ...{
this.webBrowser1.Navigate("www.google.cn");
this.webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
}

void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
 ...{
if (e.Url.ToString() != this.webBrowser1.Url.ToString()) return;
foreach(System.Windows.Forms.HtmlElement el in this.webBrowser1.Document.GetElementsByTagName("input"))
 ...{
if (el.Name == "btnG")
 ...{
el.Click += new HtmlElementEventHandler(Form1_Click);
}
}
}

void Form1_Click(object sender, HtmlElementEventArgs e)
 ...{
MessageBox.Show("jinjazz pass");
}


}
}
|