vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: ComboBox als DropDown ohne Erfassungsmöglichkeit 
Autor: Manfred X
Datum: 17.11.12 18:47

Hier ein Beispiel zur Anregung.
Die Datatable-Spalte wird per Bindingsource an eine Listbox gebunden.
Der Benutzer kann in einer nicht gebundenen Textbox eine Zeichenfolge
eingeben, die sofort zum Filtern der sichtbaren Einträge in der Listbox
benutzt wird.
Public Class frmFilterDemo
 
    Dim WithEvents tbo As New TextBox With {.Parent = Me, .Top = 5}
    Dim WithEvents lbo As New ListBox With {.Parent = Me, .Top = 50}
 
    Dim dt As New DataTable
    Dim bs As New BindingSource
 
    Private Sub frmFilterDemo_Load(sender As System.Object, e As _
      System.EventArgs) _
        Handles MyBase.Load
 
        CreateRandomListContent(500)
 
        bs.DataSource = dt
        bs.Sort = "Values ASC"
 
        lbo.DisplayMember = "Values"
        lbo.DataSource = bs
    End Sub
 
    Public Sub CreateRandomListContent(ByVal number As Integer)
 
        'Zufällige Einträge für die Listbox erzeugen
        Dim rndm As New Random, c As Char, stb As New System.Text.StringBuilder
        dt.Columns.Clear()
        dt.Columns.Add("Values")
        For i As Integer = 0 To number - 1
            Dim l As Integer = rndm.Next(3, 10)
            stb.Clear()
            For k As Integer = 0 To l - 1
                stb.Append(Chr(rndm.Next(65, 90)))
            Next k
            dt.Rows.Add(stb.ToString)
        Next i
    End Sub
 
    Private Sub tbo_TextChanged(sender As Object, e As System.EventArgs) _
        Handles tbo.TextChanged
        If String.IsNullOrWhiteSpace(tbo.Text) Then
            bs.Filter = Nothing
        Else
            'Textbox-Inhalt zum Filtern der Liste verwenden
            bs.Filter = "Values LIKE '" & tbo.Text.ToUpper.Trim & "*'"
        End If
    End Sub
 
    Private Sub lbo_SelectedValueChanged(sender As Object, e As _
      System.EventArgs) _
        Handles lbo.SelectedValueChanged
        If lbo.SelectedValue Is Nothing Then
            Me.Text = "keine Auswahl"
        Else
            'den jeweils ausgewählten Listen-Eintrag in den Form-Text eintragen 
            Me.Text = CType(lbo.SelectedValue, DataRowView).Row( _
              "Values").ToString
        End If
    End Sub
End Class
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
ComboBox als DropDown ohne Erfassungsmöglichkeit2.102rrobbyy17.11.12 14:54
Re: ComboBox als DropDown ohne Erfassungsmöglichkeit1.223Manfred X17.11.12 15:39
Re: ComboBox als DropDown ohne Erfassungsmöglichkeit1.230rrobbyy17.11.12 18:22
Re: ComboBox als DropDown ohne Erfassungsmöglichkeit1.238Manfred X17.11.12 18:47
Re: ComboBox als DropDown ohne Erfassungsmöglichkeit1.197Micke20.11.12 09:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel