ComboBox und Textbox problem

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von Trade.

    ComboBox und Textbox problem

    Hallo liebe VB'ler,
    ich habe ein Problem und zwar :
    Eine Combobox(Dropdown liste) mit 4 Sachen drinnen (Salat, Wurst, Schinken, Möhre) <-- Beispiele
    und eine Textbox, in der mindestens 3 Buchstaben Oder Zahlen müssen. Aber nur wenn "Salat" in der Combobox steht.
    Wenn "Wurst", "Schinken" oder "Möhre" in der Combobox steht soll das nicht abgefragt werden.

    Hier der Code wie ich dachte geht das :

    VB.NET-Quellcode

    1. If Combobox.Text = "Salat" and Len(Textbox1.Text) > 3 Then
    2. Else
    3. error2.Show()
    4. End If


    LG
    Rick*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Rick*“ ()

    Dazu musst du abfragen welches Item ausgewählt ist, das geht aber nicht mit ComboBox.Text sondern mit ComboBox.SelectedItem

    VB.NET-Quellcode

    1. If ComboBox.SelectedItem = "Salat" and TextBox1.Text.Length > 3 Then
    2. Else
    3. error2.Show()
    4. End If
    der "Error2" kommt immer selbst wenn in der Combobox "Wurst", "Möhre" oder "Schinken" steht.
    Aber der soll nur kommen wenn "Salat" ausgewählt ist und in der Textbox nicht mehr als 3 buchstaben/Zahlen sind. :/

    und schon mal danke für die erste Hilfe.

    LG
    Dann stell die Bedingung um.

    Hört sich etwas kontraproduktiv an, aber ich bin kein Orakel was auf Anfrage Code liefert ^^
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais
    @schroffl, @Keybladmaster Bullshit. Das ist Option Strict Off-Code, zumal ich mir nicht mal sicher bin, ob das geht.
    Die Property ist ein Object, man müsste wenn dann erstmal in einen String casten.

    SelectedValue oder ComboBox.GetItemText wäre die Lösung, beim Zweiten kannste dann SelectedItem nutzen.

    @Rick* Gugge Du außerdem mal hier: Instanziierung von Forms und Aufruf von Dialogen
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Bedingung 1: Das selektierte Item der Combobox ist "Salat"
    Bedingung 2: Die Länge des Textes der TextBox ist kleiner gleich 3

    Wenn Bedingung1 und Bedingung2, dann error2 zeigen.
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais
    Ich habe das Problem gelöst. Danke für Eure Hilfe :D

    Hier der Code : Vielleicht hat irgendwann jemand das gleiche Problem :)

    VB.NET-Quellcode

    1. If Combobox1.SelectedItem = "Salat" And Textbox1.Text.Length > 3 Or Combobox1.SelectedItem = "Schinken" And Textbox1.Text.Length < 1 Or Combobox1.SelectedItem = "Wurst" And Textbox1.Text.Length < 1 Or Combobox1.SelectedItem = "Möhre" And Textbox1.Text.Length < 1 Or Combobox1.SelectedItem = "" And Textbox1.Text.Length < 1 Then
    2. Else
    3. error2.Show()
    4. End If
    Schön, dass Du meinen Beitrag gekonnt ignoriert und die schlechteste Methode gewählt hast...
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    machma Option Strict On!

    Jetzt, wo ich deine Bedingungen verstehe, kann ich auch was dazu formulieren
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Dim comboText = ComboBox1.SelectedItem.ToString, textboxLength = TextBox1.Text.Length, bingo = False
    2. If comboText = "Salat" Then
    3. bingo = textboxLength > 3
    4. Else
    5. bingo = textboxLength < 1
    6. End If
    7. If bingo Then
    8. MessageBox.Show("Bingo!")
    9. Else
    10. MessageBox.Show("Fail!")
    11. End If
    Das wäre der richtige Ansatz.
    Aber einfach es so zu machen, weil Du es nicht verstehst, ist doch unsinnig. Dann kannst Du uns doch fragen und wir können Dir helfen.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!: