[VS 2005] DataGridView sauvegarde

DataGridView sauvegarde [VS 2005] - C#/.NET managed - Programmation

Marsh Posté le 08-01-2006 à 17:21:10    

Bonjour,
j'ai un probleme avec l'utilisation d'un datagridview (nouvelle version du datagrid de vd 2k3).
 
Je vous presente mon code :
 
Je créé une classe Personne, qui va contenir diverses informations comme le nom, prenom, age etc ...
Une fois créée, je ratache ma classe a une data source de type objet.
 
De cette facon, quand je fais un glisser deposer de ma base sur une form, j'ai directement un DatagridView de créé; il contient une colonne Nom, Prenom etc ... (ca facilite les binds par la suite, car tous mes futurs element de ma form sont rattaché a mon objet)
 
Pour ajouter une personne à ma base je fais  
Personnes.Add(new Personne("Nom","Prenom",Sexe.....);  
 
Normalement j'utilise un Dataset pour sauvegarder ma table  
( mydataset.Tables.Add(NomelaTable
puis mydataset.WriteXml(chemin); )
 
sauf que la je ne connais pas le nom de la table créée automatiquement
j ai essayé de faire un   mydataset.Tables.Add();
pour prendre le nom par defaut, mais mon dataset reste vide.
 
Comment procéder pour sauvegarder cette table generé automatiquement ?
Peu etre en sauvegardant la liste des mes objets créés ? (mais pour les réouvrir apres ??)
 
Merci

Reply

Marsh Posté le 08-01-2006 à 17:21:10   

Reply

Marsh Posté le 08-01-2006 à 21:05:48    

J'ai testé des methodes comme : (dans le code de mon bouton enregistrer)

Code :
  1. DataSet ds = new DataSet();
  2. myDataGridView.DataSource = ds;
  3. ds.WriteXml(myStream);


 
mais rien. Mon fichier xml generé est vide
 
 
edit :
Si je pouvais connaitre le nom de ma table, cela m'arrengerai pas mal :(


Message édité par Pookie le 08-01-2006 à 21:19:54
Reply

Marsh Posté le 09-01-2006 à 19:43:27    

Code :
  1. XmlSerializer xmlSer = new XmlSerializer(typeof(PersonneCollection));
  2. xmlSer.Serialize(new FileStream("c:\\save.xml", FileMode.CreateNew), Personnes);


 
Par contre deserializer pose probleme
 

Code :
  1. PersonneCollection myObject;
  2.             // Construct an instance of the XmlSerializer with the type
  3.             // of object that is being deserialized.
  4.             XmlSerializer mySerializer =
  5.             new XmlSerializer(typeof(PersonneCollection));
  6.             // To read the file, create a FileStream.
  7.             FileStream myFileStream =
  8.             new FileStream("c:\\save.xml", FileMode.Open);
  9.             // Call the Deserialize method and cast to the object type.
  10.             myObject = (PersonneCollection)
  11.             mySerializer.Deserialize(myFileStream);


 
 
Source de mon programme :
http://thibault33.free.fr/Dossier% [...] rsonne.zip


Message édité par Pookie le 09-01-2006 à 19:43:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed