BindingSource.Filter [Résolu]

Messages postés
208
Date d'inscription
samedi 17 janvier 2009
Statut
Membre
Dernière intervention
5 mars 2013
- - Dernière réponse : cs_JLuc01
Messages postés
208
Date d'inscription
samedi 17 janvier 2009
Statut
Membre
Dernière intervention
5 mars 2013
- 18 oct. 2010 à 22:47
Bonsoir,

J'ai un probleme avec le control MonthCalendar. Ce code ne marche pas:

Private Sub mcBirthday_DateChanged(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DateRangeEventArgs) Handles mcBirthday.DateChanged
        Dim search As String = mcBirthday.SelectionStart
        ContactsBindingSource.Filter = "Birthday LIKE '" + search.ToString + "%'"
End Sub


Alors que celui-ci marche (pour un textbox):

Private Sub txtSearch_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSearch.TextChanged
        Dim search As String = txtSearch.Text
        ContactsBindingSource.Filter = "Surname LIKE '" + search.ToString + "%'"
End Sub


Je ne comprends pas pourquoi. Faut-il utiliser une autre propriete que SelectionStart pour le MonthCalendar mcBirthday? Pourtant, la variable search contient la date selectionnee sur le MonthCalendar.
En fait, je click sur une date et cela m'efface tout le contenu de mon DataGridView.

Toute idee est la bienvenue.
Merci,

JLuc01
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
540
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
1 février 2013
1
3
Merci
Bonsoir!!

Ton problème vient très certainement du format de la date que tu appliques dans ton filtre qui n'est très certainement pas identique à celui de ta base de donnée...

Ce qui compte,ce n'est pas ce qu'on a mais plutôt ce que l'on fait avec ce qu'on a...

Visual Basic .Net is the best
and vb6.0

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Commenter la réponse de NSUADI
Messages postés
208
Date d'inscription
samedi 17 janvier 2009
Statut
Membre
Dernière intervention
5 mars 2013
1
3
Merci
Voila, j'ai trouve mon bonheur!

Dim search As Date = mcBirthday.SelectionStart
ContactsBindingSource.Filter = "Birthday LIKE '" + search.ToLongDateString + "%'"


Toutefois, je ne comprends pas toutes les subtilitees.

Ca marche avec "Date" ou "DateTime".
Ca marche avec "ToLongDateString", mais pas avec "ToShortDateString".

Ca marche aussi en plus court:

ContactsBindingSource.Filter = "Birthday LIKE '" + mcBirthday.SelectionStart.ToLongDateString + "%'"


Merci encore pour ton aide, cela m'a permis de chercher au bon endroit.

JLuc01

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_JLuc01
Messages postés
208
Date d'inscription
samedi 17 janvier 2009
Statut
Membre
Dernière intervention
5 mars 2013
1
0
Merci
Bizarre! Pourtant, "Birthday" est declare "as String" dans ma base de donnee (comme tous mes autres donnees).
Je chercherais ce soir dans cette direction toutefois.
Merci pour le conseil.

Un autre conseil SVP, est-ce que ces ecritures simplifiees sont bonnes aussi?

Dim search As String = mcBirthday.SelectionStart
ContactsBindingSource.Filter = "Birthday LIKE '" + search + "%'"

("search" est deja declare "as String")
ou encore mieux,
ContactsBindingSource.Filter = "Birthday LIKE '" + mcBirthday.SelectionStart.ToString + "%'"


JLuc01
Commenter la réponse de cs_JLuc01