probleme recherche datagridview
bonjour
j'essaye d'expliquer:
j'ai dans ma Base un table contenant 2 lignes
la 1ere est rempli, la 2eme contient des cellules vides
j'ai un combobox contenent les noms de colonnes de la table, un textbox pour taper le mot à rechercher
si je ne tape rien dans le textbox la ligne 2 ne s'affiche pas
voici le code:
view_adresse est le nom de ma datagridview:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
Private Sub Chercher_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Chercher.Click
Select_Fichier()
Dim user As String = ""
If IsDBNull(TextBox1.Text) Then
user = TextBox1.Text.ToString()
End If
Dim SQLStringSEARSH As String
Dim objConnection As New OleDbConnection(ParamConnexion)
Dim objDataAdapter As OleDbDataAdapter
Dim objDataSet As New DataSet
Dim objDataTable As DataTable
Dim objDataRow As DataRow
Dim LSTItems As ListViewItem
Dim SUBItems As ListViewItem.ListViewSubItem
Dim code As New Integer
Dim colonne As String = ""
Dim contenuCombo As String = "Prénom"
If IsDBNull(cboRechercherDans.SelectedItem) Then
contenuCombo = cboRechercherDans.SelectedItem.ToString()
End If
Select Case contenuCombo
Case "Code"
colonne = "codeclient"
Case "Date d'ajout"
colonne = "dateclient"
Case "Nom"
colonne = "nom"
Case "Prénom"
colonne = "prenom"
Case "Adresse"
colonne = "adresse"
Case "GSM"
colonne = "gsm"
Case "Tél"
colonne = "tel"
Case "Raison sociale"
colonne = "raison"
End Select
Console.WriteLine(colonne)
'Commande pour lire dans la base de donnée la Table et met le en ordre ascendant par nom:
SQLStringSEARSH = "SELECT * FROM TblClient WHERE " & colonne & " LIKE '%" & user & "%' ORDER BY codeclient"
objConnection.Open()
objDataAdapter = New OleDb.OleDbDataAdapter(SQLStringSEARSH, objConnection)
objDataAdapter.Fill(objDataSet)
'3.2) Affichage dans la listview:
View_Adresse.Items.Clear()
View_Adresse.BeginUpdate()
'Répete chaque Table dans le DataSet collection.
For Each objDataTable In objDataSet.Tables
'Répete chaque ligne de la table
For Each objDataRow In objDataTable.Rows
LSTItems = View_Adresse.Items.Add(objDataRow("codeclient").ToString)
If IsDBNull(objDataRow("dateclient")) Then
SUBItems = LSTItems.SubItems.Add("")
Else
SUBItems = LSTItems.SubItems.Add(CDate(objDataRow("dateclient")).ToString("dd/MM/yyyy"))
End If
SUBItems = LSTItems.SubItems.Add(objDataRow("nom").ToString)
SUBItems = LSTItems.SubItems.Add(objDataRow("prenom").ToString)
SUBItems = LSTItems.SubItems.Add(objDataRow("adresse").ToString)
SUBItems = LSTItems.SubItems.Add(objDataRow("gsm").ToString)
SUBItems = LSTItems.SubItems.Add(objDataRow("tel").ToString)
SUBItems = LSTItems.SubItems.Add(objDataRow("raison").ToString)
Next
Next
' Affiche le contenu au complet de View_Adresse:
View_Adresse.EndUpdate()
lblConnect.Text = "Connection réussi : " & View_Adresse.Items.Count & " Utilisateurs"
'fermeture de la base:
objConnection.Close()
End Sub |