如果复选框在页面之间被选中是条件的

本文关键字:条件 之间 复选框 如果 | 更新日期: 2023-09-27 18:11:16

我目前在我的设置下有一个复选框。Xaml页面,用户要单击该页面以允许位置服务。

private void cbLocationAllow_Checked(object sender, RoutedEventArgs e)
{
    MessageBox.Show("Location Services is now enabled");
}
private void cbLocationAllow_Unchecked(object sender, RoutedEventArgs e)
{
    MessageBox.Show("Location Services is now disabled");
}

我在我的主页上有位置感知bing地图,我想检查设置上的复选框的状态。

我认为这将是一个条件,如果否则,但我不太确定如何实现这个复选框是在另一个页面。

下面的代码是建议给我的,但我得到错误在

Settings.SetSetting("allowLocation",true);

设置页:

cbLocationAllowChecked(...)
{
Settings.SetSetting("allowLocation",true);
}
cbLocationAllowUnchecked(...)
{
Settings.SetSetting("allowLocation,false);
}

作为条件

MapButtonClicked(...)
{
if (!Settings.HasSetting("allowLocation") || !((bool)Settings.GetSetting("allowLocation"))
        MessageBox.Show("Allow app to use your location?, "Location Services",MessageBoxButtons.OkCancel);
//handle result
else{
StartLocationSearch();
}
}

任何建议或链接,可以帮助我将是伟大的。

谢谢,

如果复选框在页面之间被选中是条件的

使用IsolatedStorageSettings类保存您的设置。

存储设置

private void cbLocationAllow_Checked(object sender, RoutedEventArgs e)
{
  var settings = IsolatedStorageSettings.ApplicationSettings;
  settings["allowLocation"] = true;
  settings.Save();
}

读取设置

var settings = IsolatedStorageSettings.ApplicationSettings;
bool allowLocation = false;
if( settings.Contains( "allowLocation" ) ) {
  allowLocation = (bool)settings["allowLocation"];
}