我目前正在使用MSDN(https://msdn.microsoft.com/en-us/library/ms171565%28v=vs.110%29.aspx)中的示例来保存用户配置设置。
这对我的需求很好,因为我需要存储的对象数量可能因运行而异。由于用户可以随意创建或销毁对象,因此我需要跟踪这些对象并相应地更新设置文件。我使用SettingsKey来读/写每个对象,因为对象之间的属性可能不同。每个对象都有一个我在SettingsKey中使用的唯一ID。
我观察到的是:每个对象都被妥善保存和恢复。但是,当一个对象被销毁时,它将保留在设置文件中。
我需要从设置文件中删除被破坏的对象。 这是怎么做到的?我还没有找到任何代码示例来说明如何执行此操作。
这些在代码的前面声明: UserSettings uSet; uSet = new UserSettings();
这是保存对象的代码:
for (int i = 0; i < CurrrentViewportCount; i++)
{
if (VP_ID[i] != -1)
{
uSet.SettingsKey = "Viewport" + VP_ID[i];
foreach (Control cP in this.Controls)
{
if (cP.Name.Equals(uSet.SettingsKey) == true)
{
Viewport VP = (Viewport)cP;
uSet.PanelName = VP.Name;
uSet.PanelID = VP.PanelID;
uSet.ConnectionName = VP.SourceMRL;
uSet.Save();
break;
}
}
}
else
{
// Need to remove unused object
}
}
我为格式化(缩进)道歉,如果它关闭了。这是我的第一篇文章,我尝试遵循发布代码的指导方针....
我考虑过删除user.config文件并重新加载,但我觉得Reload()只会从app.exe.config重新创建user.config并且不会向我显示&#34;空&# 34; user.config文件。
总结一下,我的主要问题是如何删除特定的用户设置?
感谢您的帮助。