Sorry for the delay in getting back to you with this. I've updated the project you provided with our scenario. You will see that it uses an image list in the tree view (not sure if that might be where the code is tripping up). I've also included a screenshot.rtf file so you can see what I'm seeing.
In the first screenshot, I select a member of the first node, the next screenshot shows that I've clicked the scrollbar while holding down the shift key (which in this case takes me to the end of the list). I actually want to select the remaining items from the first node from my original clicked selection.
To explain, I want to select "data for Id: 17" through "data for Id: 9" because I've held the shift down and selected "data for Id: 17" and (while still holding down the shift) found "data for Id: 9" and clicked it.
In the final screenshot you will see that it did not select those items between the subnodes at all.
Please let me know if you need any other information to fix this odd behavior.
Thanks,
Tom
TreenodeSelection-327448023_ee7bb596.zip