private void EhTopicSelectionChanged(NGTreeNode obj) { // if this node has a own control, use it, otherwise use the next child var node = GetFirstNodeWithControl(obj); string title = string.Empty; object view = null; if (node != null) { var desc = (IOptionPanelDescriptor)node.Tag; var ctrl = desc.OptionPanel; title = desc.Label; view = ctrl.ViewObject; _currentNode = node; } _view.InitializeTopicView(title, view); _view.InitializeTopicViewDirtyIndicator(_dirtyTopics.Contains(_currentNode) ? 1 : 0); }