C# - App.Config, Modifier la valeur d'une clé

Fermé
Olivier Bal Messages postés 8 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 3 juin 2009 - 5 janv. 2006 à 14:47
 Jo - 20 déc. 2011 à 09:03
Bonjour et meilleurs voeux pour cette année
J'aimerai modifier la valeur d'une clé dans le fichier de configuration App.config, et ceci par code. En effet, j' ai une entrée <add key="AfficherMenu" value="true" /> et j'aimerai que si l'utilisateur décoher la case à cocher chkAfficherMenu, la valeur de la clé AfficherMenu dévienne "false " de telle sorte qu'au prochain démarrage de l'application, la barre de menu devienne invisible.
J'ai procédé comme suit:
ConfigurationSettings.AppSettings.Set("AfficherMenu", "false");
mais le message indiquant que le fichier est en lecture seule m'est rétourné. Si vous pouvez m'aider svp!
A voir également:

3 réponses

A.Turing Messages postés 8 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 23 février 2009 2
13 janv. 2009 à 23:22
Bonjour,

En effet le AppSettings est une propriété en lecture seule.

Pour Modifier la valeur d'une clé vous devez procéder comme suit

*******************************************************************************
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Remove(cle);
config.AppSettings.Settings.Add(cle,valeur);
*******************************************************************************

Entre nous je n'ai pas encore trouvé le moyen de modifier mais ça pourra vous interesser entre temps.

Bon Courage
2
Bonjour,

J'ai aussi essayer de la même maniére de changer les valeurs de mon fichier de configuration, cependant je n'y arrive pas. Il semblerait que ce soit un autre fichier qu'il soit modifié. Tout ce que je sais c'est qu'il faut absolument que la clé soit en mode user et non application ( car celle-ci est en read only). Je ne sais pas si sa peut t'aider, en tout cas je suis curieux de connaître la réponse.

Cordialement,
0
je viens de voir ce qui a été noté dans ce forum
au cas ou d'autre lirait ce qui est au dessus
faut savoir que cela modifie le fichier configuration qui est dans le même dossier que l'exécutable, dans le dossier debug par défaut.
0
Pour modifier le fichier app.config dans l'application, passer par la classe XmlDocument

http://social.msdn.microsoft.com/Forums/fr-FR/visualcsharpfr/thread/e77057c2-d6ea-4a4a-ad30-313411e8354e
0
Sinon, tu as toujours la solution d'ecrire un fichier configuration.ini avec tes parametres (false ou true) avec ton if (.... checked == true ...). Tu fais ton streamreader à l'initialisation de ton appli et tu set tes parametres à partir du fichier .ini.
-1