问题读取设置的更新值(app.config)

时间:2015-07-08 10:24:51

标签: c# winforms timer

我在winforms app中创建了这样的设置:link

你可以看到我有定时器间隔值。目标是里面的计时器在这里:

{
    // Inside timer tick handler
    ....
      finally
                {
                    timer1.Stop();
                    int tinterval = Properties.Settings.Default.TimerInterval;
                    HelperMethods.AppendToLogFile(tinterval.ToString(), LogType.Information);

                    timer1.Interval = tinterval;
                    timer1.Start();
                }
}

我想在运行时更改计时器的间隔值。

但是当我启动应用程序时,即使我更改了app.config文件中的间隔(从Windows资源管理器打开),仍然在上面的计时器中读取旧值。我做错了什么?

编辑:实际上,如果我关闭我的应用程序并再次启动它(即重新启动我的应用程序),这甚至都不起作用。它仍然从app.config读取旧值(不是我在应用程序关闭后和应用程序打开之前输入的值)。我错了什么?

PS。罪魁祸首可能在这里,请see - 它总是读取旧值1500,而不是2000.你可以看到VS如何说(在我关闭并重新打开项目之后)设置文件仍然具有旧值,是什么在这里?

2 个答案:

答案 0 :(得分:1)

假设您已应用默认设置,Settings的配置文件可能会保存在用户目录中,而不是应用程序目录中。因此,您正在编辑错误的文件。这是因为在Visual Studio的设置编辑器中Scope值设置为User

尝试在AppData中找到您应用的配置(通常是Local\YourCorporation\Application_version或类似的内容)。

答案 1 :(得分:0)

部分答案在这里 Changes in App.config do not reflect after restarting the application

但是在运行时看到配置文件的变化,我现阶段没有解决和忽略。