0

Windows Phone の設定ページから直接設定および取得するコードを作成するにはどうすればよいですか?

if (IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent"))
    {
    if ((bool)IsolatedStorageSettings.ApplicationSettings["LocationConsent"] == true)

        return;
    else
    {
        MessageBoxResult result =
                    MessageBox.Show("Can I use your position?",
                    "Location",
                    MessageBoxButton.OKCancel);

        if (result == MessageBoxResult.OK)
        {
            IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;
        }
        else
        {
            IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;
        }

        IsolatedStorageSettings.ApplicationSettings.Save();
    }
    }
else
{
MessageBoxResult result = 
            MessageBox.Show("Can I use your position?", 
            "Location",
            MessageBoxButton.OKCancel);

        if (result == MessageBoxResult.OK)
        {
            IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;
        }else
        {
            IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;
        }

        IsolatedStorageSettings.ApplicationSettings.Save();
    }
}

この例では、場所の設定を使用しています。アプリケーションから true に設定すると、[設定] ページの設定もオンに変更されます。しかし、元の Windows Phone のページ設定から場所の設定をオフに変更しても、アプリケーションではまだ true として読み取られます。これを修正する方法は?

4

1 に答える 1

1

次のようなことを試してください:

   if((IsolatedStorageSettings.ApplicationSettings.Contains("LocationConsent")) && ((bool)IsolatedStorageSettings.ApplicationSettings["LocationConsent"] == true))
            {   return; }
            else
            {      MessageBoxResult result =
                    MessageBox.Show("This app accesses your phone's location. Is that ok?",
                    "Location",
                    MessageBoxButton.OKCancel);
                if (result == MessageBoxResult.OK)
                {IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = true;  }
                else
                {IsolatedStorageSettings.ApplicationSettings["LocationConsent"] = false;  }
                IsolatedStorageSettings.ApplicationSettings.Save();         
   }
于 2013-08-06T18:38:29.323 に答える