C# 重新启动应用程序后恢复应用程序设置
我有一个C#应用程序,在其中我将某些值存储在如下设置文件中:C# 重新启动应用程序后恢复应用程序设置,c#,runtime,settings,restart,C#,Runtime,Settings,Restart,我有一个C#应用程序,在其中我将某些值存储在如下设置文件中: <?xml version="1.0"?> <configuration> <configSections> <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neut
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="VITRIconEvacuationPlan.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</sectionGroup>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="VITRIconEvacuationPlan.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<EvacuationPlan.Properties.Settings>
<setting name="AssemblyCentre" serializeAs="String">
<value>False</value>
</setting>
</EvacuationPlan.Properties.Settings>
</applicationSettings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup><userSettings>
<EvacuationPlan.Properties.Settings>
<setting name="SymbolScale" serializeAs="String">
<value>25</value>
</setting>
</EvacuationPlan.Properties.Settings>
</userSettings>
</configuration>
但当我关闭应用程序时,符号刻度的值又是25。但是我想让它存储运行时的chenged值。我做错了什么?您确定检查的是正确的“user.config”文件吗? 通常存储在“C:\Users\xyzuser\AppData\Local\yourcompany\youarpp\version\user.config”中
希望有帮助 将其设置为:
Settings.Default.SymbolScale=150代码>
使用Settings.Default.Save()保存它代码>我在这里找到了一个解决方案:
我只需更改并保存我的符号值,如下所示:
Properties.Settings.Default.SymbolScale = 150;
Properties.Settings.Default.Save();
Properties.Settings.Default.Upgrade();
Properties.Settings.Default.Save();
我不知道为什么我必须调用保存函数两次,但它可以工作(并且只能调用两次)我已将其更改为应用程序范围,但当我尝试更改该值时,它会告诉我它是写保护的。@Metalhead89您是对的,我已编辑了我的答案。这样对你有用吗?这对我来说很有效,因为我没有这样的配置文件。我刚刚编写了一个程序集,在AutoCAD中用作插件。我刚刚通过Visual Studio设置属性创建了app.config。(项目->属性->设置->设置.设置)
Properties.Settings.Default.SymbolScale = 150;
Properties.Settings.Default.Save();
Properties.Settings.Default.Upgrade();
Properties.Settings.Default.Save();