Bindingsource.Filter mit Platzhalter

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von VB-and-Me.

    Bindingsource.Filter mit Platzhalter

    Guten Tag!
    Ich möchte mein gebundenes Gridview gefiltert ausgeben und die Filterkriterien erst zur Laufzeit über eine/mehrere Textboxen eingeben.

    VB.NET-Quellcode

    1. ' 1. Filter
    2. 'Dim MeinFilter As String = String.Format("[AktWert] >= 20000")
    3. ' 2. Filter: 2 Double-Werte
    4. 'Dim Wert1 As Double = 2000
    5. 'Dim Wert2 As Double = 5000
    6. 'Dim MeinFilter As String = String.Format("[AktWert] >= '{0}' and [Aktwert] <= '{1}'", Wert1, Wert2)
    7. ' 3.Filter: 2 Datumangaben
    8. 'Dim StartDatum As Date = CDate("31.12.2013")
    9. 'Dim EndDatum As Date = CDate("1.1.2016")
    10. 'Dim MeinFilter As String = String.Format("[Fälligdatum] >= #{0:MM/dd/yyyy}# And [Fälligdatum] <= #{1:MM/dd/yyyy}#", StartDatum, EndDatum)
    11. '4.Filter: eine bestimmte Bank
    12. 'Dim Suchname As String = "PSD-Bank"
    13. 'Dim MeinFilter As String = String.Format("[Bank] = '{0}' ", Suchname)
    14. '5.Filter: Teilstring ???
    15. Dim Suchname As String = * & "Bank" ' geht so nicht!
    16. Dim MeinFilter As String = String.Format("[Bank] = '{0}' ", Suchname)
    17. BriefTblBindingSource.Filter = MeinFilter


    Die Filter 1-4 arbeiten gut.
    Filter 5: Aber wie kann ich nach einem Teilstring suchen? Wie muss ich die Wildcard * setzen? Ich möchte, wenn ich "Bank" eingebe, Daten wie SB-Bank, Bank-1, DieBank angezeigt bekommen.

    Im Forum und Internet komme leider ich nicht recht weiter.
    Herzlichen Dank!
    Freundliche Grüße
    el
    Das * muss wenn schon mit in den String rein.
    Dim Suchname As String = "*Bank"
    /weiß nicht ob's funtioniert

    Analog kann man einfach den Syntax von einer DataColumn.Expresion abgucken.

    Wildcard Characters
    Both the * and % can be used interchangeably for wildcard characters in a LIKE comparison. If the string in a LIKE clause contains a * or %, those characters should be enclosed in brackets ([]). If a bracket is in the clause, each bracket character should be enclosed in brackets (for example [[] or []]). A wildcard is allowed at the start and end of a pattern, or at the end of a pattern, or at the start of a pattern. For example:
    "ItemName LIKE '*product*'"
    "ItemName LIKE '*product'"
    "ItemName LIKE 'product*'"


    Folglich:
    Dim Suchname As String = "[Bank] LIKE '*bank'"


    Probier einfach mal :)
    Lg
    /nicht getestet