ユーザーがツリービュー(右または左)をクリックしてカーソルがノード上にない場合、選択したノードを何も設定しません。私は、コントロールのいずれかの部分がクリックされた場合、TreeView.MouseClickイベントが発生すると思ったが、ノードがクリックされたときだけ起動するように見える。これを行う方法はありますか?ノードビューがクリックされていないときにクリックと.MouseClickイベントが発生しない
編集*選択したノードに何も設定しないでください。tvwMain.SelectedNode = Nothing
ですが、コントロールがクリックされ、TreeView.MouseClickおよびTreeView.Clickイベントが発生していないため、その時点でノードが存在しない場合は実行できません。ノードがクリックされない限り起動しないようです。
Private Sub tvwMain_NodeMouseClick(sender As Object, e As MouseEventArgs) Handles tvwMain.Click
Dim p = New Point(e.X, e.Y)
Dim node As TreeNode = tvwMain.GetNodeAt(p)
If node IsNot Nothing Then
tvwMain.SelectedNode = node
MsgBox("HERE")
Else
tvwMain.SelectedNode = Nothing
MsgBox("TOO")
End If
End Sub
Winformsの、WPFやASP.Net? –
[TreeViewで選択したノードの選択をクリアするにはどうすればいいですか?](http://stackoverflow.com/questions/11824443/how-do-i-clear-the-selection-of-a-selected -node-in-a-treeview) –
選択したノードに何も設定することはできません。 'tvwMain.SelectedNode = Nothing'ですが、ユーザーがコントロールをクリックしたときにそのノードをクリックするとします。また、WinForms – Alex