- summary: NodeMouseClick event seems to not always fire --> NodeMouseClick event doesn't always fire
I was playing around with the tristate checkboxes in the SimpleExample.cs control when I came across a small problem.
I added a line to _tree_NodeMouseClick so I could get the state of the box that had just been clicked:
if (e.Control is NodeCheckBox)
Console.WriteLine(((MyNode)e.Node.Tag).CheckState);
Then I ran the app. Clicking on the node slowly worked fine, but if I click twice quickly, the state of the checkbox changes twice - but the NodeMouseClick event only fires once.
I thought that maybe it was firing the double-click event for the second click (which would make sense) but it seems that checkboxes don't fire double-click...
So, basically, if you double-click a checkbox, the state changes twice (good), but the NodeMouseClick event only fires once (not so good).
I wanted to cascade node check statuses up the tree, so if all nodes below a parent are checked then the parent itself is checked, and so on upwards. I can handle it in the underlying node class, but it would be nice if the main app was notified.
Other than that, it's excellent. You've got to wonder why something like this isn't actually a standard control...