Problem bei Werteübergabe mit Combobox


preetzer

Grünschnabel
Hallo,
ich habe derzeit ein Problem, das ich mir nicht erklären kann.
Ich erzeuge eine Combobox außerhalb jeder Funktion, füge Werte zu dieser Combobox hinzu und will den ausgewählten Wert mit Hilfe einer eventhandlenden Funktion auslesen. Hier habe ich nun folgendes Problem: Rufe ich vor dem Auslesen des Wertes der Combobox eine Messagebox auf, funktioniert das Auslesen, lasse ich die Messagebox dagegen weg, erhalte ich beim Auslesen einen leeren String.

Zur Verdeutlichung:
Code:
Friend WithEvents combo1 As New System.Windows.Forms.ComboBox
Private Sub InitializeComponent()
.
.
.
For i = 1 To n
     combo1.Items.Add(col.Item(i))
Next
.
.
.
End Sub
Private Sub combo1_change(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles combo1.SelectedValueChanged
        MessageBox.Show("UM DIESE MESSAGEBOX GEHT ES") 
        ShowKataloge(Me.combo1.SelectedText) 'Dieser Parameter ist entweder leer oder enthält den ausgewählten String, je nachdem, ob der vorherige Aufruf stattfindet.
End Sub
Kann mir vielleicht jemand erklären, woran das liegt, bzw. was ich machen muss, um das Aufrufen einer Messagebox vermeiden zu können?
Danke im Voraus!
 

Irdi

Mitglied
Hallo,

um ein selektierten Satz der Combobox zu ermitteln benutze ich ein anderes Befehl, der mich noch nie hängengelassen hat.


"Auswahl = Me.ComboBox1.Items.Item(Me.ComboBox1.SelectedIndex)"

versuche einfach, vielleicht wird er dir helfen

Gruß Irdi.
 

JensG

Erfahrenes Mitglied
Hallo,

warum nicht einfach so

Code:
Private Sub combo1_change(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles combo1.SelectedValueChanged

        ShowKataloge(Me.combo1.Text) 

End Sub
Gruß Jens
 

Norbert Eder

Erfahrenes Mitglied
combo1.Text ist sehr gefährlich .. vor allem, wenn du ein Objekt in der ComboBox unterbringst, welches die ToString()-Methode überschreibt, um einen Text in der ComboBox anzeigen zu lassen.

Daher würde ich von combo1.Text abraten, auch wenn es vielleicht im gegebenen Falls als unwichtig erscheint - später fällt einem das auf den Kopf.
 

preetzer

Grünschnabel
Hallo, war ein paar Tage nicht hier. Danke für Eure Antworten.

Ich habe es mit SelectedIndex probiert. Diese Lösung funktioniert sehr gut, auch wenn ich immer noch nicht verstehe, warum der erste Weg nicht funktioniert hat.

Vielen Dank nochmal für Eure Mühe

Grüße Preetzer