Левый и правый щелчки запускают событие щелчка и вызывают изменение выбора.Однако в определенных обстоятельствах (которые я пока не удосужился отследить) выбор изменится с узла, по которому щелкнули правой кнопкой мыши, на первоначально выбранный узел.
Чтобы убедиться, что щелчок правой кнопкой мыши изменяетсяВы можете принудительно изменить выбранный узел, используя событие MouseDown
:
treeView.MouseDown += (sender, args) =>
treeView.SelectedNode = treeView.GetNodeAt(args.X, args.Y);
Немного лучше, как отметил один из других авторов, использовать событие NodeMouseClick
:
treeView.NodeMouseClick += (sender, args) => treeView.SelectedNode = args.Node;