private void NotifyImmediateChildren(bool value) { if (this.Child != null) { GeneratorNodeHelper nodeHelper = new GeneratorNodeHelper(this.Child, 0, 0); //index not important nodeHelper.MoveToEnd(); do { nodeHelper.CurrentNode.NotifyExpansionStateChanged(value); }while(nodeHelper.MoveToPrevious() == true); } }
public bool MoveBackward() { bool recurseGroup = true; GeneratorNodeHelper nodeHelper = new GeneratorNodeHelper(m_currentNode, m_index, m_sourceDataIndex); do { GroupGeneratorNode groupNode = nodeHelper.CurrentNode as GroupGeneratorNode; if ((groupNode == null) && (nodeHelper.CurrentNode != m_currentNode) && (nodeHelper.CurrentNode.ItemCount != 0)) { m_currentNode = nodeHelper.CurrentNode; m_index = nodeHelper.Index; m_sourceDataIndex = nodeHelper.SourceDataIndex; return(true); } if ((recurseGroup) && (nodeHelper.MoveToChild())) { nodeHelper.MoveToEnd(); continue; } recurseGroup = true; if (nodeHelper.MoveToPrevious()) { continue; } if (nodeHelper.MoveToParent()) { recurseGroup = false; continue; } break; }while(true); return(false); }