我在C#中有一个TreeView,我正在切换NodeMouseClick事件并根据点击的节点打开相应的表单,这可以正常工作。我的问题是一些节点有子节点,如果你单击该节点旁边的小+框,它将展开树,但它也将选择该父节点。我只是希望它扩展树而不是选择父。知道我做错了什么或我能做什么?
答案 0 :(得分:6)
您可以在NodeMouseClick处理程序中使用以下代码来确定是否在项目本身或+框上发生了单击。如果结果为false,那么您可以从处理程序返回而不执行现有操作。
bool clickedItem = e.Node.Bounds.Contains(e.Location);
在我的测试中,通过使用+框扩展节点不会更改所选节点。