vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

VB.NET - Fortgeschrittene
Autovervollständigung in ComboBox 
Autor: HellSeeker2k
Datum: 08.03.04 09:44

Da ich in meiner ComboBox ca 200 Einträge habe, suche ich nach einer Möglichkeit eine autovervollständigung in meine box ein zu bauen. Ich habe jetzt von einem freund diesen code bekommen, der aber bei mir nicht funktioniert. Ich denke es is ein VB6 Code und desshalb jetzt hier meine Frage:

Hat jemand ne Idee wie ich so eine Autovervollständigung in meine Combo einbauen kann, oder kann mir jemand sagen was an diesem Code alles geendert werden müsste ?
Private Sub combo1_KeyUp(ByVal KeyCode As Integer, ByVal Shift As Integer)
        Static sTextOld As String
        Dim I As Integer
        Dim sPos As Integer
 
        With combo1
            ' nur wenn sich die Eingabe geändert hat
            If sTextOld <> .Text Then
                For I = 0 To .ListCount - 1
                    If .List(I) Like .Text + "*" Then
                        sPos = .SelStart
                        sTextOld = .Text
                        .Text = .List(I)
                        .SelStart = sPos
                        .SelLength = Len(.Text) - sPos + 1
                        Exit For
                    End If
                Next I
            End If
        End With
    End Sub
alsu bei dem.listCount, .list, .selstart und .sellenght sagt .net das es kein combobox member ist.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Autovervollständigung in ComboBox 
Autor: WaldiMaywood
Datum: 08.03.04 11:11

Das sollte funktionieren:

 Private Sub ComboBox1_KeyUp(ByVal sender As Object, ByVal e As _
   System.Windows.Forms.KeyEventArgs) Handles ComboBox1.KeyUp
        If CType(sender, ComboBox).DropDownStyle = ComboBoxStyle.DropDown Then
            If e.KeyCode = Keys.Back OrElse e.KeyCode = Keys.Tab OrElse _
              e.KeyCode = Keys.Delete OrElse CType(sender, _
              ComboBox).Items.Count = 0 Then
                Return
            End If
            Static TextOld As String
            Dim I, pos As Integer
            With CType(sender, ComboBox)
                If TextOld <> .Text Then
                    For I = 0 To .Items.Count - 1
                        If .Items.Item(I).ToString.ToUpper Like _
                          .Text.ToString.ToUpper + "*" Then
                            TextOld = .Text
                            pos = .SelectionStart
                            .Text = .Items.Item(I).ToString
                            .SelectionStart = pos
                            .SelectionLength = .Text.Length - (.SelectionStart)
                            Return
                        End If
                    Next
                End If
            End With
        End If
    End Sub
Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Autovervollständigung in ComboBox 
Autor: HellSeeker2k
Datum: 08.03.04 11:32

funktioniert wunderbar, thx
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-2024 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