2
在WinForms應用程序中,我需要檢測System.Windows.Forms.WebBrowser的內容何時被雙擊,從而打開自定義的Winform對話框。如何檢測雙擊WebBrower控件?
我注意到WebBrowserBase禁用了Control.DoubleClick事件,但我還沒有弄清楚如何覆蓋這種行爲。
在WinForms應用程序中,我需要檢測System.Windows.Forms.WebBrowser的內容何時被雙擊,從而打開自定義的Winform對話框。如何檢測雙擊WebBrower控件?
我注意到WebBrowserBase禁用了Control.DoubleClick事件,但我還沒有弄清楚如何覆蓋這種行爲。
MouseDown也被禁用。這是因爲鼠標事件發送到DOM。您可以使用HtmlElement.AttachEventHandler()方法訂閱DOM事件。例如:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
webBrowser1.Url = new Uri("http://stackoverflow.com");
webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;
}
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
webBrowser1.Document.Body.AttachEventHandler("ondblclick", Document_DoubleClick);
}
void Document_DoubleClick(object sender, EventArgs e) {
MessageBox.Show("double click!");
}
}
完美!謝謝。 – 2010-05-13 13:34:35