问题:用户在初次启动时设置的值不会停留在App.config xml
所需功能:用户设置的值,保留存储在App.config中,除非用户更改
我试图做到这一点,以便用户第一次运行应用程序时,他们会设置一个文件夹,用于保存程序中的文件。我想将该字符串存储在App.config中,以便只需设置一次。到目前为止,它将设置并将其保存在内存中,但如果程序关闭,则值将丢失。我认为调用.save()方法会修复它,但它没有。 在表格开头:
if (ConfigurationManager.AppSettings["SaveFilePath"] == null)
{
FolderBrowserDialog fbd1 = new FolderBrowserDialog();
fbd1.RootFolder = Environment.SpecialFolder.MyComputer;
fbd1.Description = "Select a folder to save to:";
fbd1.ShowNewFolderButton = true;
if (fbd1.ShowDialog() == DialogResult.OK)
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Add("SaveFilePath", fbd1.SelectedPath);
config.Save();
ConfigurationManager.RefreshSection("appSettings");
}
}
答案 0 :(得分:1)
应该使用应用程序设置文件(在项目的属性页中查看)来存储和检索用户设置。
见Using Settings in C#。 该页面显示了VS 2005,但它仍适用于使用VS 2017的项目