2015-01-02 75 views
0

我有一個浮動gridview的窗體,填充文本框或單擊按鈕時必須出現。如果選擇的項目或鼠標離開網格,網格變得不可見,因此用戶可以看到表單的其餘部分。網格數據大多數情況下超過了最大垂直尺寸,所以需要一個垂直滾動條。我的問題是,當鼠標移動到垂直滾動條觸發MouseLeave事件,所以網格變得不可見。如何在單擊垂直滾動條時避免gridview鼠標離開事件?

這次我認爲這不是代碼問題,那麼是否有一些屬性需要更改以使程序將vscrollbar識別爲GridView的一部分?否則有一些代碼解決方案,以便在滑動滾動條時忽略MouseLeave事件?

這裏是我的事件代碼,很簡單:

Private Sub GridCliente_MouseLeave(sender As Object, e As System.EventArgs) Handles GridCliente.MouseLeave 
    GridCliente.Visible = False 

End Sub 

另外,我使用的組件之一C1TrueDBGrid而不是標準的GridView。這可能很重要。

回答

0

我通過將GridView添加到面板並將MouseLeave事件更改爲面板,找到了解決我的問題的方法。爲了達到這個目的,面板必須至少在每邊至少有一個像素的GridView大小,因爲如果GridView與面板的大小相同,則MouseLeave不會觸發(您必須將鼠標懸停在面板上而不是其內部的任何其他組件具有vb .net考慮鼠標內部面板)。也許這不是最好的解決方案,但它適用於我。