Même source de données mais 2 tris différents pour 2 affichages
benji2000
Messages postés78Date d'inscriptionsamedi 26 août 2006StatutMembreDernière intervention25 novembre 2016
-
Modifié par Whismeril le 25/06/2015 à 12:13
benji2000
Messages postés78Date d'inscriptionsamedi 26 août 2006StatutMembreDernière intervention25 novembre 2016
-
26 juin 2015 à 11:52
Bonjour,
J'ai une base de données de contacts chargé dans un BindingSource (Le DataSource de cet objet est un DataTable)
J'ai un DataGridView où apparaît les donnés trié par Prénom
Mais j'ai aussi un Combobox où doivent apparaître le Nom des contacts MAIS trié ici par Nom et non par Prénom.
L'objectif est que si je sélectionne mon contact d'un coté, il faut que de l'autre coté le même contact soit sélectionné.
Dim Binding As New BindingSource
Binding.DataSource = MonDataTable
Binding.Sort = "Prénom"
DGV.DataSource = Binding
CB.DataSource = Binding
L'ennuis est qu'il n'existe qu'un seul tri en commun pour ces 2 objets qui est celui du Binding.
Je veux juste savoir si un simple paramètre existe où si je dois développer quelque chose par moi même pour résoudre mon soucis.
Whismeril
Messages postés19025Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention19 avril 2024656 25 juin 2015 à 21:20
Bonsoir, un truc me chiffonne dans ton code (auquel j'ai rajouté de la couleur!), il n'y a normalement pas de constructeur sans arguments pour Binding.
Je viens de vérifier à nouveau mais si, il existe bien un constructeur sans argument pour le BindingSource.
- BindingSource() Initialise une nouvelle instance de la classe BindingSource aux valeurs par défaut des propriétés.
- BindingSource(IContainer) Initialise une nouvelle instance de la classe BindingSource et ajoute BindingSource au conteneur spécifié.
- BindingSource(Object, String) Initialise une nouvelle instance de la classe BindingSource avec la source de données et la donnée membre spécifiées.
Le nom de ma variable t'a peut-être induit en erreur, désolé.
Je réécris le code initial :
Dim BS As New BindingSource
BS.DataSource = MonDataTable
BS.Sort = "Prénom"
DGV.DataSource = BS
BS.Sort = "Nom"
CB.DataSource = BS
'En retriant sur les Nom pour le ComboBox,
' le DataGridView s'est lui aussi retrié ce que je ne veut pas !
Whismeril
Messages postés19025Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention19 avril 2024656 26 juin 2015 à 10:20
Autant pour moi, j'ai tapé trop vite en faisant mon test.
Je n'ai pas trouvé de solution, juste un contournement. Tu fais deux bindingsource, et dans l'évenement CurrentItemChanged de l'un tu le dit à l'autre. C'est pas top.
benji2000
Messages postés78Date d'inscriptionsamedi 26 août 2006StatutMembreDernière intervention25 novembre 2016 26 juin 2015 à 11:52
C'est bien ce qu'il me semblait, mais je me disait çà c'est de la bidouille et il y a surement une fonction toute faites, dommage que Microsoft n'ai pas pensé à ce système qui me parait pourtant courant !