It could be that child node has not yet been created even although the parent's HasChildren signals the presence of children. This is just a flag to indicate that the expand icon must be drawn, but the populating process might have stopped at the parent level. Partial creation of the nodes has been implemented to save time and memory because directory trees can be huge.
It is my impression that thinking in terms of the file system is a better strategy for special navigating the shelltree than thinking in terms of nodes.