背景: 在一个项目开发中遇到这样的要求:当选中树中一个节点时,需要同时选中其父节点,直至根节点.在取消一个节点的选中时,需要将其所有子节点取消选中,直至叶子节点.由于项目用户体验暂时可以不用考虑,直接想到用TreeView的TreeNodeCheckChanged事件,但是运行时发现一个问题,当改变一个节点的CheckBox的选中状态时,不会触发TreeNodeCheckChanged事件,只有在点击了某一个节点的文本后在触发一系列的事件.因此这条路行不通了,只好另寻其它方法了. 实现方法: 直…