В настоящее время я использую класс настроек приложения, который можно найти в книге Адмама Нэтана 101 Приложения для Windows Phone:
public class Setting<T>
{
string name;
T value;
T defaultValue;
bool hasValue;
public Setting(string name, T defaultValue)
{
this.name = name;
this.defaultValue = defaultValue;
}
public T Value
{
get
{
//checked for cached value
if (!this.hasValue)
{
//try to get value from isolated storage
if (!IsolatedStorageSettings.ApplicationSettings.TryGetValue(this.name, out this.value))
{
//not set yet
this.value = this.defaultValue;
IsolatedStorageSettings.ApplicationSettings[this.name] = this.value;
}
this.hasValue = true;
}
return this.value;
}
set
{
//save value to isolated storage
IsolatedStorageSettings.ApplicationSettings[this.name] = value;
this.value = value;
this.hasValue = true;
}
}
public T DefaultValue
{
get { return this.defaultValue; }
}
//clear cached value;
public void ForceRefresh()
{
this.hasValue = false;
}
}
, а затем в отдельном классе:
public static class Settings {//пользовательские настройки из меню настроек
public static readonly Setting<bool> IsAerialMapStyle = new Setting<bool>("IsAerialMapStyle", false);
}
Все работает нормально, но я не могу понять, как сохранить массив или список длины 24 в настройках приложения, используя этот метод,
У меня есть это:
public static readonly Setting<List<bool>> ListOpened = new Setting<List<bool>>("ListOpened",....
Любая помощь будет высоко ценится!