/*********************************************************************/ /// <summary> /// Konstruktor /// </summary> /// <param name="vertexToIdentify">Knoten der Identifiziert werden /// soll</param> public IdentificationWindow(CTreeVertex vertexToIdentify, bool bInteractiveView) { // Sichergehen das nur ein Identifikationsfenster geöffnet ist checkSingleIndentificationWindow(); InitializeComponent(); mVertexToIdentify = vertexToIdentify; mTableEntryList = mBusinessLogic.getFilterdTableData(mVertexToIdentify); filteredDataGrid.DataContext = this; // die Spalten der Tabelle hinzufügen, abhängig von den Verwendeten Typen List <CAttributeType> attrTypeList = mBusinessLogic.getAttributeTypes(); foreach (CAttributeType type in attrTypeList) { if (type.Used == true) { DataGridTextColumn column = new CTableColumn(type); filteredDataGrid.Columns.Add(column); } } highlightSelectedAttributeColumn(); // Nur für die Interaktive Ansicht soll der Button eingeblendet werden showButtonBar(bInteractiveView); }
/*********************************************************************/ /// <summary> /// Wird aufgerufen sobald der Benutzer auf /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void chooseAttributeBtn_Click(object sender, RoutedEventArgs e) { CTableColumn selectedColumn = filteredDataGrid.CurrentColumn as CTableColumn; if (selectedColumn != null) { if (mBusinessLogic.setVertexAttribute(mVertexToIdentify, selectedColumn.ColumnDataType) == false) { MessageBox.Show("Sie können dieses Attribut nicht auswählen, da es bereits als Attribut in einem anderen Knoten verwendet wird.", "Attribut wird bereits verwendet", MessageBoxButton.OK, MessageBoxImage.Exclamation); } else { highlightSelectedAttributeColumn(); this.Close(); } } }