| |
VB.NET - Ein- und UmsteigerFiltern mehrer Comboboxen | | | Autor: Rise_Against | Datum: 26.06.12 13:09 |
| Hi zusammen,
ich habe schon wieder ein Anliegen, allerdings bin ich mir nicht sicher, ob ich das innerhalb meines Programmes, oder in der Datenbank lösen soll.
Frontend ist natürlich VB.net, Backend SQL 2008
Folgendes:
Ich habe ein Datagridview mit 6 Spalten und für jede Spalte eine Combobox, die die selben Daten enthält wie die dazugehörige Spalte aus dem Datagrid.
Darin sind verschiedene Daten, wie Nachname Vorname etc. gespeichert.
Um die Ergebnisse in der Tabelle zu filtern, kann man eben in den Comboboxen etwas suchen und dabei wird schon eine Vorschau der möglichen gefilterten Ergebnisse angezeigt.
Soweit so gut, jetzt will ich die 6 Comboboxen verknüpfen, damit ich, nachdem ich irgendwo einen Wert eingegeben habe, nur noch die möglichen Ergebnisse angezeigt bekomme.
Ich möchte es möglichst "offline" aufbauen, damit ich nicht zu viele Datenbankanfragen habe, es müssten ja sonst bei jedem eingegebenen Zeichen, alle Comboboxen aktualisiert und gefiltert werden.
Ich habe mal einen Ansatz, der aber nicht recht funktionieren will, damit kann ich maximal zwei Comboboxen so filtern...
Ich hoffe ihr könnt mir helfen!
Danke und viele Grüße!
Hier noch etwas Code...
Private Sub cmbox_lastname_TextChanged(ByVal sender As System.Object, ByVal e _
As System.EventArgs) Handles cmbox_lastname.TextChanged
If cmbox_firstname.Text.Length = 0 Then
Get_SelectionList_Vorname()
End If
If cmbox_department.Text.Length = 0 Then
Get_SelectionList_Department()
End If
If cmbox_office.Text.Length = 0 Then
Get_SelectionList_Office()
End If
If cmbox_manager.Text.Length = 0 Then
Get_SelectionList_Manager()
End If
If cmbox_businesscategory.Text.Length = 0 Then
Get_SelectionList_BusinessCategory()
End If
End Sub
Private Sub Get_SelectionList_Nachname()
Dim query_Nachname = From user_list In ds_all_unfiltered.Tables( _
"userlist").AsEnumerable()
Where user_list!Nachname <> "" _
And user_list.Field(Of String)("Nachname").ToUpper( _
).StartsWith(cmbox_lastname.Text.ToUpper()) _
Order By user_list!Vorname
Select user_list!Vorname Distinct
Dim array_Vorname As Array = query_Vorname.ToArray()
Dim array_Vorname1 As ArrayList = New ArrayList()
array_Vorname1.Add("")
array_Vorname1.AddRange(array_Vorname)
cmbox_firstname.DataSource = array_Vorname1
cmbox_firstname.DisplayMember = array_Vorname1.ToString()
End Sub
Private Sub Get_SelectionList_Vorname()
Dim query_Vorname = From user_list In ds_all_unfiltered.Tables( _
"userlist").AsEnumerable()
Where user_list!Vorname <> "" _
And user_list.Field(Of String)("Nachname").ToUpper( _
).StartsWith(cmbox_lastname.Text.ToUpper()) _
Order By user_list!Vorname
Select user_list!Vorname Distinct
Dim array_Vorname As Array = query_Vorname.ToArray()
Dim array_Vorname1 As ArrayList = New ArrayList()
array_Vorname1.Add("")
array_Vorname1.AddRange(array_Vorname)
cmbox_firstname.DataSource = array_Vorname1
cmbox_firstname.DisplayMember = array_Vorname1.ToString()
End Sub
Private Sub Get_SelectionList_Department()
Dim query_Vorname = From user_list In ds_all_unfiltered.Tables( _
"userlist").AsEnumerable()
Where user_list!Vorname <> "" _
And user_list.Field(Of String)("Nachname").ToUpper( _
).StartsWith(cmbox_lastname.Text.ToUpper()) _
Order By user_list!Vorname
Select user_list!Vorname Distinct
Dim array_Vorname As Array = query_Vorname.ToArray()
Dim array_Vorname1 As ArrayList = New ArrayList()
array_Vorname1.Add("")
array_Vorname1.AddRange(array_Vorname)
cmbox_firstname.DataSource = array_Vorname1
cmbox_firstname.DisplayMember = array_Vorname1.ToString()
End Sub
End Sub _________________________________________________________________________________
Systemintegrator der Spa? am Programmieren gefunden hat!
Bitte nicht hauen, wenn ich etwas Falsches, oder Quatsch von mir gebe ;) | |
| 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 |
|
|
Neu! sevDTA 3.0 Pro
SEPA mit Kontonummernprüfung
Erstellen von SEPA-Dateien mit integriertem BIC-Verzeichnis und Konto- nummern-Prüfverfahren, so dass ungültige Bankdaten bereits im Vorfeld ermittelt werden können. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
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
|
|