[Datagrid] affichage sur deux datagrid

knightclubbers Messages postés 1 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 1 octobre 2004 - 1 oct. 2004 à 16:28
mhido123 Messages postés 2 Date d'inscription mardi 13 juin 2006 Statut Membre Dernière intervention 28 novembre 2010 - 28 nov. 2010 à 13:20
Voila mon pb :
Je suis en train de creer un editeur pour un logiciel a la You dont know jack :) (bref un quizz)
J'ai un dataset cree a partir d'un fichier XMLSchema et d'un fichier XML le remplissant.
Je veux l'afficher et l'editer a travers une datagrid, jusque la aucun pb.
Mais mon shema XML comprend une table "question" comprenant des stats, une question, et une liste de propositions. Ma liste de proposition est dans une sous table, comprenant entre 2 et 5 propositions. Ce qui fait, que lors de l'affichage de ma table "vraifaux", on n'a acces a la sous table de proposition seulement en cliquand le "petit plus" (je connais pas le nom exact dsl ^^) ce qui n'est pas du tout ergonomique !

Donc j'ai decider d'afficher ma table "vrai faux" sur un premier datagrid, et quand on clique sur une ligne de ce datagrid, un second datagrid affichera les propositions possibles...

Ma table ne contenant pas de relations (ce qui m'aurait permis de faire comme dans l'exemple donne dans la MSDN) je dois me debrouiller pour trouver une astuce pour que en permanence ma deuxieme datagrid affiche, selon la question sur laquelle on clique sur le premier, les propositions proposes.

J'ai donc commencer par recuperer l'evenement datagrid.Click (d'ailleurs a ma grande surprise, si on le trouve dans la completion sous visual, il n'existe pas dans la MSDN !!!!). J'ai d'ailleurs remarquer que beaucoup d'evenement et de proprietes etaient differentes, c'est a n'y rien comprend (par exemple la proprietes Columns contenant la collection des columns du datagrid). Resultat, je n'arrive pas trop a voir comment faire....

Si quelqu'un a une id, merci d'avance :)

2 réponses

gg00xiv Messages postés 656 Date d'inscription mercredi 22 août 2001 Statut Membre Dernière intervention 11 mars 2005 13
3 oct. 2004 à 12:35
J'ai fais il y a quelques temps un travail la dessus avec la base de données Northwind de SQLServer 2000.
J'avais deux DataGrid, un affichant les Orders (dgOrders) et un affichant les OrderDetails (dgOrderDetails).
dgOrderDetails devait s'afficher en fonction de la ligne sélectionnée dans dgOrders.

Ainsi j'ai crée cet évenement dans dgOrders:

private void dgOrders_SelectedIndexChanged(object sender, System.EventArgs e)
{
int rowID = dgOrders.SelectedItem.DataSetIndex;

dgOrderDetails.DataSource = dsNorthwind1.Orders[rowID].GetOrder_DetailsRows();
dgOrderDetails.DataBind();
}


Ici la méthode GetOrder_DetailsRows avait été générée car il existe une relation entre ces deux tables.
Mais rien ne t'empêche à partir de l'ID de la ligne sélectionnée de retrouver les lignes correspondantes dans l'autre table avec une requête (myDataTable.Select).

Membre du Labo .NET
mhido123 Messages postés 2 Date d'inscription mardi 13 juin 2006 Statut Membre Dernière intervention 28 novembre 2010
28 nov. 2010 à 13:20
Bonjour Mr gg00xiv , Stpl pour .SelectedItem ne me le donne pas le visual ??
Rejoignez-nous