您没有在此处清除本地设置。ApplicationDataContainer.Values 返回一个 PropertySet,Clear 方法对应于 Collection 类。所以它只清除你得到的集合而不是设置。您必须使用 Remove 方法基于键单独删除设置或使用 ApplicationDataContainer 来存储您的设置。您可以一次性删除存储在容器中的所有设置。按其键单独删除设置:
ApplicationData.Current.LocalSettings.Values.Remove("key");
创建应用程序数据容器:
var LocalSettingsContainer = ApplicationData.Current.LocalSettings;
var container = LocalSettingsContainer.CreateContainer("ContainerName", ApplicationDataCreateDisposition.Always);
将设置添加到容器:
container.Values[Key] = Value;
删除一个容器:
LocalSettingsContainer.DeleteContainer("containerName");
PS:请注意,如果容器中有任何子容器,您将要删除指定容器中的设置以及子容器将被删除。更多关于 localsettings 的信息可以在文档中找到。
编辑:您可以通过将 ApplicationDataContainer.Values 转换为具有 Keys 属性的 ApplicationDataContainerSettings 来获取ApplicationDataContainer中的键,您可以通过该属性单独删除设置。
var containerSettings = (ApplicationDataContainerSettings)ApplicationData.Current.LocalSettings.Values;
var keys = containerSettings.Keys;