Ich habe einen Fehler mit einer Combobox
Mein Code:
%Vor%Die Daten werden in der Combobox angezeigt, aber wenn Sie den Auswahlwert ändern, ändert sich das Anzeigeelement nicht.
Es funktioniert jetzt aber, wenn ich auf die Schaltfläche klicke, um die Daten anzuzeigen
%Vor%Dies wird angezeigt:
FleetName
FleetID
Es zeigt den Wert nicht an
Sie müssen Ihren Code komplett neu schreiben. DisplayMember und ValueMember zeigt auf columnNames! Außerdem sollten Sie wirklich ein using block
verwenden - damit die Verbindung nach der Ausführung der Abfrage entsorgt (und geschlossen ) wird.
Anstatt einen dataReader zu verwenden, um auf die Werte zuzugreifen, wählte ich eine dataTable und band sie als dataSource auf die ComboBox.
%Vor% Die Verwendung einer dataTable ist möglicherweise etwas etwas langsamer als ein dataReader , aber ich muss keine eigene Klasse
BEARBEITEN
Wenn Sie den aktuellen Wert der Combobox erhalten möchten, versuchen Sie dies
%Vor% Um das Combobox
in der von Ihnen beabsichtigten Weise zu verwenden, könnten Sie ein Objekt an die Methode cmbTripName.Items.Add
übergeben.
Dieses Objekt sollte FleetID
und FleetName
Eigenschaften haben:
Die Klasse Fleet
:
Oder Sie könnten wahrscheinlich die Notwendigkeit einer Fleet
-Klasse vollständig beseitigen, indem Sie einen anonymen Typ verwenden ...
Tags und Links c# data-binding