0
我有一個System.Windows.Forms.TreeView與HotTracking =真
我想HotTracking只在特定節點設置爲False。
System.Windows.Forms.TreeView節點「不能點擊」
例如,我希望父親不可點擊,孩子可點擊。
謝謝
我有一個System.Windows.Forms.TreeView與HotTracking =真
我想HotTracking只在特定節點設置爲False。
System.Windows.Forms.TreeView節點「不能點擊」
例如,我希望父親不可點擊,孩子可點擊。
謝謝
「Clickable」非常含糊。我會假設你不希望他們是可選的。使用BeforeSelect事件很容易,您可以取消它。例如:
Private Sub TreeView1_BeforeSelect(ByVal sender As Object, ByVal e As TreeViewCancelEventArgs) Handles TreeView1.BeforeSelect
If e.Node.Nodes.Count > 0 Then e.Cancel = True
End Sub
這不會爲一個偉大的用戶界面,用戶將非常,當他點擊沒有效果confuzzled。您可以通過不點擊點擊並自動選擇允許選擇的節點來使其更直觀一些。使其看起來類似於:
Private Sub TreeView1_BeforeSelect(ByVal sender As Object, ByVal e As TreeViewCancelEventArgs) Handles TreeView1.BeforeSelect
If e.Node.Nodes.Count > 0 Then
e.Cancel = True
Me.BeginInvoke(New Action(Of TreeNode)(AddressOf SelectNode), e.Node.Nodes(0))
End If
End Sub
Private Sub SelectNode(ByVal node As TreeNode)
node.Expand()
node.TreeView.SelectedNode = node
End Sub