如何以编程方式删除不需要的用户设置?

时间:2015-10-22 16:48:32

标签: c# winforms

我目前正在使用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文件。

总结一下,我的主要问题是如何删除特定的用户设置?

感谢您的帮助。

0 个答案:

没有答案