Textbox mit Wert einer Combobox füllen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Leopath.

    Textbox mit Wert einer Combobox füllen

    Hallo,
    Ich habe ein Problem, da ich noch nicht lange in VB unterwegs bin.

    Ich möchte, dass meine Combobox direkt von Anfang an "Sonstige.." anzeigt und somit die Textbox für eine Eingabe bereit sein soll.
    Wenn jedoch ein anderer Eintrag ausgewählt ist, soll man nichts mehr in die Textbox schreiben können. Außerdem soll, wenn ich zum Bespiel den Eintrag "Wasser" auswähle, in der Textbox der Wert/die Zahl "1" stehen.
    Wie kann das machen.

    Vielen Dank im voraus für eure Hilfe.
    Hallo leopath.

    Wäre Super wenn du teile deines Codes und der Ideen postest, damit dir besser geholfen wird.

    Du kannst in dem Ergebnis combobox select der textbox das ausgewählte item der combobox übergeben und auch zeitgleich textbox.active = false setzen.
    Soweit ich es verstanden habe :

    VB.NET-Quellcode

    1. Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
    2. Select Case ComboBox1.SelectedIndex
    3. Case 0 'Sonstige
    4. TextBox1.Text = ""
    5. TextBox1.Enabled = True
    6. Case 1 'Wasser
    7. TextBox1.Enabled = False
    8. TextBox1.Text = "1"
    9. Case Else 'Alle anderen Items
    10. TextBox1.Text = ""
    11. TextBox1.Enabled = False
    12. End Select
    13. End Sub
    14. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    15. ComboBox1.SelectedIndex = 0
    16. End Sub
    Immer mit der Ruhe, alles schön einzeln.
    Wenn bei einem ComboBox-Text von "bla" etwas (nicht) passieren soll, musst Du das ComboBox-Selected-Item-Change oder das ComboBox-Selected-Index-Change-Event bemühen und dann das andere Control verriegeln:

    VB.NET-Quellcode

    1. Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
    2. Button2.Enabled = ComboBox1.SelectedItem.ToString = "Bratwurst"
    3. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Gonger96: Vielen Dank. Dein Lösungsvorschlag hat mir sehr geholfen. Jetzt funktioniert das so wie ich mir das vorstelle.
    @tulla: Ich habe deinen Beitrag erst jetzt gelesen, aber Gonger96 hat mir schon entsprechend geholfen. Trotzdem danke für deine Mühe und dein Interesse. Gut zu wissen, man eine hilfsbereite Community gefunden hat.
    Naja, ich hoffe du hast auch mehr mitgenommen als copy&paste. Das ist das was rodfromgermany und ich eigentlich wollten. Selbst dahinter kommen!
    Auch wenn es manchmal nervt, nicht gleich die richtige Lösung zu haben ist es um so eingestanzter wenn man es selbst zusammen setzt.

    Gruß
    Big T
    Naja, ich hoffe du hast auch mehr mitgenommen als copy&paste. Das ist das was rodfromgermany und ich eigentlich wollten. Selbst dahinter kommen!

    Auch wenn es manchmal nervt, nicht gleich die richtige Lösung zu haben ist es um so eingestanzter wenn man es selbst zusammen setzt.
    Danke nochmal.
    Natürlich habe ich mir dann auch meine Gedanken gemacht. Ich wusste, dass man in diesem Fall die "Select Case" Verzweigung nutzt. Jedoch konnte ich mit der Architektur nichts anfangen. ich wusste nicht, man die einzelnen "Cases" notiert.

    Mit freundlichen Grüßen
    Leo :)