Hallo,
ich habe eine WPF-Applikation mit ".Net 4.0". In der Applikation verwende ich ein Datagrid der für das anzeigen, Bearbeiten sowie Hinzufügen der Datensätze gedacht ist. Soweit so gut.
Ich hole die Daten mittels DataTable aus der DB. Ich schreibe auch neue Datensätz mittels des SQLCommanBuilders wieder in die DB. Alles ok. Aber jetzt möchte ich wenn ich im Edit-Mode bin (Bearbeitungsstatus) das im DataGrid mitttels der Combobox eine Auswahl an Möglichkeiten angeboten wird.
Der Wert im TextBlock ist ein int-Wert.
XML-Daten
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| <DataGridTemplateColumn Header="Typ"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding TYPE}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox Loaded="cbxType_Loaded" Name="cbxType" SelectionChanged="cbxType_SelectionChanged" Text="{Binding TYPE}" SelectedIndex="{Binding TYPE}" DisplayMemberPath="{Binding TYPE}" ItemsSource="{Binding}"/> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> |
Wobei Type eine spalte der Tabelle ist.
Hierbei verwende ich für die Itemsource der Combobox eine andere Liste das die eigentlichen Einträge beinhaltet.
Das Loaded-Event sieht so aus:
C#-Quelltext
1: 2: 3: 4: 5: 6:
| DataTable tableCbx = sql.SQL_DT("SELECT * FROM TABELLE"); ComboBox c = (ComboBox)sender; c.ItemsSource = tableCbx.DefaultView; c.DisplayMemberPath = "ID"; c.SelectedValue = "ID"; |
Die Daten aus der Tabelle sind mit einem Fremdschlüssel mit der eigentlichen Tabelle Verknüpft das im DataGrid angezeigt werden soll. Ich komme aber nicht drauf wie ich die Daten in der Combobox anzeigen soll.
Es soll der Name angezeigt werden aber im Hintergrund soll natürlich die Id dieses Datensatzes verarbeitet werden wenn ein Datensatz in der Combobox ausgewählt ist.
Das Problem ist, wenn ich ein Datensatz aus der Combobox auswähle ist die Zelle Rot markiert. Ich glaube weil die Zelle ein int-Wert erwartet und einen String bekommt?! Kann das sein?
Tut mir leid wenn sich das komisch anhört bin aber schon komplett verwirrt..
Ich bitte um HILFEEEEEE..
Danke im voraus.
Schoenewelt
Moderiert von
Kha: XML-Tags hinzugefügt
Moderiert von
Kha: C#-Tags hinzugefügt
Moderiert von
Kha: Topic aus WinForms verschoben am Fr 08.10.2010 um 15:22