2010-08-06 3 views
1

J'ai créé un DataGridView et je l'ai configuré! comment je peux enregistrer tout ce que l'utilisateur saisit dans le fichier XML (settings.xml)? donc la prochaine fois que l'utilisateur exécutera le programme, il lira toutes les données et les affichera dans le GridDataViewC# Écrire/Lire GridDataView en XML?

les données ne seront pas beaucoup, c'est juste quelques types de paramètres!

J'ai trouvé beaucoup de tutoriels en ligne, mais ils ne fonctionnent pas ou utilisent DataGrid !!!

Modifier: est-ce vraiment difficile à faire! Je remarque que les personnes qui posent cette question n'obtiennent pas de solution, malgré le travail acharné que les experts font pour expliquer !!!!!

Je veux l'apprendre un lien vers un tutoriel (ça marche)?

+0

Qu'est-ce que vous utilisez comme source de données? –

+0

Rien réellement! –

+0

Comment charger des données dans DataGrid? –

Répondre

1

La méthode la plus simple consiste à connecter un DataSet en tant que datasource, puis à enregistrer le jeu de données dans xml et à charger le fichier XML la fois suivante.

DataSet ds = new DataSet(); 
    //save the dataset as xml 
    ds.WriteXml("your path to save the xml"); 

    //read the xml into your dataset 
    ds.ReadXml("your path to save the xml"); 
+0

bonjour, et comment connecter un DataSet comme source de données !!! –

+0

grid.DataSource = ds; Et vous devez vous assurer que les noms de colonnes de l'ensemble de données sont identiques à la propriété DataField des colonnes DataSet. –

+0

Merci, maintenant je l'ai, merci de "assurez-vous que les noms de colonnes de l'ensemble de données sont les mêmes que la propriété DataField des Colonnes DataSet" :-) –

0

Vous devez sérialiser votre DataSource et non DataGrid.

Créer un nouveau DataTable, ajouter des colonnes, lié DataTable à DataGrid. Ensuite, utilisez DataTable.WriteXml et DataTable.ReadXml pour enregistrer et charger xml.

+0

vous voulez dire type BindingSource ?? –

+0

J'ai modifié ma réponse. –

0

la façon la plus facile:

Private DataSet UserSettings(string pathofXML) 
{ 
    DataSet ds = new DataSet(); 
    ds.ReadXml(pathofXML); 
    return ds; 
} 

private void BindGrid() 
{ 
    string pathOfXML = Application.StartupPath + @"\Settings.xml"; 
    gridview.DataSource = UserSettings(pathOfXML); 
} 
+0

Je suis désolé les gars, mais je me sens bloqué, je ne sais pas comment le faire, dman, je me sens vraiment bloqué! –