private void UpdateNode(TreeControl.Node node) { ItemInfo info = new WinFormsItemInfo(m_treeControl.ImageList, m_treeControl.StateImageList); info.IsExpandedInView = node.Expanded; if (m_itemView != null && node.Tag != null) { m_itemView.GetInfo(node.Tag, info); } node.Label = info.Label; node.FontStyle = info.FontStyle; node.ImageIndex = info.ImageIndex; node.StateImageIndex = info.StateImageIndex; node.IsLeaf = info.IsLeaf; node.HasCheck = info.HasCheck; node.CheckBoxEnabled = info.CheckBoxEnabled; node.CheckState = info.GetCheckState(); node.AllowSelect = info.AllowSelect; node.AllowLabelEdit = info.AllowLabelEdit; node.HoverText = info.HoverText; if (m_selectionContext != null && !m_synchronizingSelection) { try { m_synchronizingSelection = true; node.Selected = m_selectionContext.SelectionContains(MakePath(node)); } finally { m_synchronizingSelection = false; } } }