private void UpdateContentTreeSelection(TreeNode node) { HeadingTreeNodeWrapper nodeTOC = m_HeadingsNavigator.GetAncestorContainer(node); if (nodeTOC != null) { if (TreeView.SelectedItem != nodeTOC) { m_ignoreHeadingSelected = true; TreeView.SelectItem(nodeTOC); } } }
private void OnHeadingSelected(object sender, RoutedPropertyChangedEventArgs <object> e) { if (m_ignoreHeadingSelected) { m_ignoreHeadingSelected = false; return; } HeadingTreeNodeWrapper node = TreeView.SelectedItem as HeadingTreeNodeWrapper; if (node != null) { TreeNode treeNode = (node.WrappedTreeNode_LevelHeading ?? node.WrappedTreeNode_Level); //UpdatePageListSelection(treeNode); m_ignoreTreeNodeSelectedEvent = true; Logger.Log("-- PublishEvent [TreeNodeSelectedEvent] NavigationPaneView.OnHeadingSelected", Category.Debug, Priority.Medium); EventAggregator.GetEvent <TreeNodeSelectedEvent>().Publish(treeNode); } }