2011-10-11 30 views
2

我試圖讓我的winform以下功能:C#的WinForms ListView的DoubleClick事件的任何地方

我需要這樣每次我的ListView裏面有人雙擊,會有些事情發生,但事件似乎只雙擊包含ListView中的項目而不是ListView中的任何位置(包括所有項目下面的空白區域)的行時觸發。

當雙擊任何地方在ListView什麼事件會火?

感謝

+0

使用MouseDoubleClick事件。如果你想知道是否點擊了任何有趣的東西,那麼使用HitTest()方法。 –

回答

0

你或許可以達到要求的行爲()。

在該方法中,你必須要攔截正確的消息:WM_LBUTTONDBLCLK(或類似)。

這不會是你曾經寫過的最漂亮的代碼,但應該讓你的結果。

1

可以使用ListView1_MouseDown事件,而不是點擊從ListView中繼承,並重寫的方法OnNotifyMessage

+0

我應該在問題中更加清楚(正如我在標題中所述) - 我只對雙擊感興趣(儘管您的解決方案確實有效)。 – Gal

+1

在MouseDown事件處理程序中,按如下方式編寫代碼: if(e.Clicks == 2) {*您的代碼響應雙擊*/ } – Nemo1024

相關問題