chb1982
Goto Top

VB2005 ComboBox versteckten Wert übergeben

Moin,

bisher habe ich meine Combobox immer mit combo1.addRange(New String("Wert1","Wert2")) gefüllt.

Diese Werte kann ich später mit combo1.text auch wieder abrufen.

Was ist, wenn ich nun zum Wert1 noch einen Parameter haben möchte, der nicht in der Combobox dargestellt wird.

Ich möchte also bei der Auswahl "Wert1" in der Auswahlliste stehen haben, aber später im Programm mit combo1.text (oder so) nur noch "w1" .

Geht das irgendwie?

Gruß
Christoph

Content-Key: 101645

Url: https://administrator.de/contentid/101645

Printed on: April 24, 2024 at 05:04 o'clock

Member: dog
dog Nov 12, 2008 at 18:45:17 (UTC)
Goto Top
Nur mal so eine theoretische Idee (Ich bin kein VB-Programmierer):

Du kannst mit ComboBox.Items.Add() beliebige Objekte in die Combobox einfügen.
Stellen wir uns mal folgende Klasse vor (pseudocode):
Class KeyValue {
	string key;
	string value;

	function New(key,value) {
		this.key = key;
		this.value = value;
	}
	
	function ToString() {
		return value;
	}
}
(In der Praxis würde man wohl ein Dictionary nehmen).

Dann könntest du z.B. folgendes machen um die Werte einzufügen:
	Dim eintrag1 As KeyValue = New KeyValue("w1","Wert 1")  
	#ComboBox schon definiert
	comboBox.Items.Add(eintrag1)

Wenn du jetzt den Key auslesen willst:
	comboBox.SelectedItem.key