Je poste en desespoir de causes car car je n'arrive pas à résoudre un problème simple qui est la création de 2 listview dont l'un est le parent et l'autre l'enfant. Tout 2 relié par une relation, j'ai parcouru plein de site... mais pas trouvé ce style de truc basique ou du moins pas comme je veux (surtout avec WPF).
Donc voilà mon blème mon premier ListViewParent se rempli correctement, à l'ouverture mon second ListViewChild correspond bien aux données joints la première ligne qui est cliqué par défaut mais lorsque je clique sur la seconde ligne du ListViewParent, les données ne se rafraichie pas dans le Child??? alors que je pensais que c'était automatique. Voilà en gros ce que je fais.
DataSet dt = new DataSet(); // je créé mon dataset
DataTable Parent = new DataTable("Parent"); // je créé ma table et je la rempli (je mets pas le code mais le débuggage montre bien les données OK)
DataTable Child = new DataTable("Child"); // idem debuggage OK
dt.Tables.Add(Parent); // ajout dans le DataSet OK
dt.Tables.Add(Child); // ajout dans le DataSet OK
DataRelation Relation = new DataRelation("Relation", dt.Tables["Parent"].Columns["ID"],dt.Tables["Child"].Columns["ID"],false);
dt.Relations.Add(Relation); // Ajout de la relation
Donc jusque là tous semble OK puisque le debuggage me montre bien les données Parent et Child dans le DataSet
BindingSource bsParent = new BindingSource();
BindingSource bsChild = new BindingSource();
bsParent.DataSource = dt;
bsParent.DataMember = "Parent";
bsChild.DataSource = bsParent;
bsChild.DataMember = "Relation";
this.listViewParent.DataContext = bsParent;
this.listViewChild.DataContext = bsChild;
Voilà quand j'ouvre ma fenêtre mon bind semble fonctionne sur la première ligne qui est cliqué par défaut mais lorsque je clique sur les suivantes du ListViewParent !! rien toujours les mêmes lignes concernant la première personne, il doit manquer une sorte de refresh mais où ??? ou alors c'est WPF ?
Partager