7
我有一個Winform應用程序,我正在使用TreeView。這個應用程序的一些用戶有一個問題,他們必須雙擊節點才能展開它。所以我添加了這個代碼來使用單擊來展開節點:Treeview節點點擊行爲
Private Sub MyTreeView_NodeMouseClick(sender As System.Object,
e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles MyTreeView.NodeMouseClick
If e.Node.IsExpanded Then
e.Node.Collapse()
Else
e.Node.Expand()
End If
End Sub
這可行,但我注意到有關點擊節點的奇怪行爲。我注意到有2個地方有不同的行爲。第一個位置是與+/-符號和它旁邊(圖中第一圓)的點,第二位的是節點(第二圓)的文本:
在第一位置通常單一的點擊足以展開節點並且必須在第二個地方完成雙擊以展開節點。然後,當我使用我的代碼時,單擊第二個位置就足以展開節點,但是當我單擊第一個位置時,節點將展開並摺疊。
爲什麼用戶必須在第二個位置點擊兩次才能展開節點?我能做些什麼來在兩個地方單擊來擴展節點?感謝你們!
我的計劃是要檢查x,y座標並計算座標是否屬於+/-或節點文本。我不知道HitTest方法和TreeViewHitTestLocations。謝謝! – DanielH