protected void AddRootAnatomicEntityNode() { if (_xmlDoc != null && _xmlDoc.AnnotationDescriptionXML2.Exists && _xmlDoc.AnnotationDescriptionXML2.First.anatomicEntityCollectionXML.Exists) { // 1-st top level node DropDownTreeNode node = new DropDownTreeNode(_select_text); int i = node.ComboBox.Items.Add(new ComboItem(_select_text)); node.ComboBox.SelectedIndex = i; // 2-d actual data node foreach (anatomicEntityCollectionXMLType xmlAnatomicEntityCollection in _xmlDoc.AnnotationDescriptionXML2.First.anatomicEntityCollectionXML) { if (xmlAnatomicEntityCollection.AnatomicEntityXML2.Exists) { foreach (AnatomicEntityXML xmlAnatomicEntity in xmlAnatomicEntityCollection.AnatomicEntityXML2) { if (xmlAnatomicEntity.codeMeaning.Exists) { ComboItem comboItem = new ComboItem(xmlAnatomicEntity.codeMeaning.First.Value, xmlAnatomicEntity); node.ComboBox.Items.Add(comboItem); } } } } int nodeIdx = mainTree.Nodes.Add(node); // Set initial selection if (mainTree.SelectedNode == null) mainTree.SelectedNode = mainTree.Nodes[nodeIdx]; } else if (mainTree.Nodes.Count == 0) { this.AddNoDataNode(mainTree.Nodes); } }
private void mainTree_NodeValueChanged(object sender, EventArgs e) { DropDownTreeNode node = sender as DropDownTreeNode; if (node != null) { ComboItem comboTag = node.ComboBox.SelectedItem as ComboItem; this.SuspendLayout(); node.Nodes.Clear(); if (comboTag != null && comboTag.TagValue != null) { if (comboTag.TagValue is AnatomicEntityXML) { AnatomicEntityXML xmlAnatomicEntity = (AnatomicEntityXML)comboTag.TagValue; if (xmlAnatomicEntity.relatedAnatomicEntityXML.Exists) { DropDownTreeNode childNode = new DropDownTreeNode(_select_text); int i = childNode.ComboBox.Items.Add(new ComboItem(_select_text)); childNode.ComboBox.SelectedIndex = i; foreach (AnatomicEntityXML xmlRelatedAnatomicEntity in xmlAnatomicEntity.relatedAnatomicEntityXML.First.AnatomicEntityXML2) { if (xmlRelatedAnatomicEntity.codeMeaning.Exists) { ComboItem comboItem = new ComboItem(xmlRelatedAnatomicEntity.codeMeaning.First.Value, xmlRelatedAnatomicEntity); childNode.ComboBox.Items.Add(comboItem); } } if (childNode.ComboBox.Items.Count > 1) { node.Nodes.Add(childNode); node.Expand(); } } } } this.ResumeLayout(); this.Update(); EventsHelper.Fire(SelectedAnatomicEntitiesChanged, this, EventArgs.Empty); } }
protected void AddRootImagingObservationNode() { if (_xmlDoc != null && _xmlDoc.AnnotationDescriptionXML2.Exists && _xmlDoc.AnnotationDescriptionXML2.First.imagingObservationCollectionXML.Exists) { DropDownTreeNode node = new DropDownTreeNode(_select_text); int i = node.ComboBox.Items.Add(new ComboItem(_select_text)); node.ComboBox.SelectedIndex = i; foreach (ImagingObservationXML xmlImagingObservation in _xmlDoc.AnnotationDescriptionXML2.First.imagingObservationCollectionXML.First.ImagingObservationXML2) { if (xmlImagingObservation.codeMeaning.Exists) { ComboItem comboItem = new ComboItem(xmlImagingObservation.codeMeaning.First.Value, xmlImagingObservation); node.ComboBox.Items.Add(comboItem); } } int nodeIdx = mainTree.Nodes.Add(node); _selectedImagingObservations.Add( new ObservationSelection(new ImagingObservationXML(null))); System.Diagnostics.Debug.Assert(_selectedImagingObservations.Count == nodeIdx + 1); // Set initial selection if (mainTree.SelectedNode == null) mainTree.SelectedNode = mainTree.Nodes[nodeIdx]; } else if (mainTree.Nodes.Count == 0) { this.AddNoDataNode(mainTree.Nodes); _selectedImagingObservations.Clear(); } this.UpdateEnabledStates(); }