Ich hab jetzt mal das Szenario bei mir nachgestellt und im
SelectedIndexChanged-Event einfach mal geguckt, von welchem Typ denn das
SelectedItem einer solchen ComboBox ist. Das zeigte mir, dass das ein
DataRowView ist. Kurz in der Hilfe geguckt: Hat einen Default-Indexer um auf die Spalten zuzugreifen. Bei mir klappt es dann so:
Delphi-Prism-Quelltext
1: 2: 3: 4: 5:
| if comboBox1.SelectedItem <> nil then begin var drv := DataRowView(comboBox1.SelectedItem); MessageBox.Show(drv['ID'].ToString); end; |
(Ist zwar Prism, geht in C# dann aber genauso)
//Edit: Noch schöner kam man's machen, wenn man in die richtige Klasse castet:
Delphi-Prism-Quelltext
1: 2: 3: 4: 5: 6:
| if comboBox1.SelectedItem <> nil then begin var drv := DataRowView(comboBox1.SelectedItem); var row := websiteDataSet.CategoryRow(drv.Row); MessageBox.Show(row.ID.ToString); end; |
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".