【发布时间】:2011-10-14 08:38:54
【问题描述】:
我目前有一个复选框来遵守 MS 位置服务规则,但当您重新访问该页面时,它似乎没有保存其状态。
代码如下:
private void cbLocationAllow_Checked(object sender, RoutedEventArgs e)
{
var settings = IsolatedStorageSettings.ApplicationSettings;
settings["allowLocation"] = true;
settings.Save();
}
private void cbLocationAllow_Unchecked(object sender, RoutedEventArgs e)
{
var settings = IsolatedStorageSettings.ApplicationSettings;
settings["allowLocation"] = false;
settings.Save();
}
我以为会是这样的......
private void SaveState(CheckBox checkBox)
{
var settings = IsolatedStorageSettings.ApplicationSettings;
if (settings.Contains("allowLocation"))
{
checkbox.isChecked == true;
}
但这似乎不起作用,我再次寻求帮助。
【问题讨论】:
-
checkbox.IsChecked == true;没有做很多.. double (==) 是比较而不是 setter
-
嗨 Rhys,只是一个猜测,但如果设置存在,逻辑看起来有点缺陷。那么你想做这样的事情
checkbox.isChecked = Convert.ToBoolean(settings["allowLocation"]);
标签: c# silverlight windows-phone-7 location