0

私は2つのクラスを持っています。まず、IsolatedStorage を使用して、ToggleSwitchButton からブール値を格納するために使用します。

このような...

    private void tglSwitch_Checked(object sender, RoutedEventArgs e)
    {
        System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings["EnableLocation"] = true;  
    }
    private void tglSwitch_Unchecked(object sender, RoutedEventArgs e)
    {
        System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings["EnableLocation"] = false;
    }

2 番目のクラスは、最初のクラスのブール値を使用して何かを行います。

このような...

     if(booleanValFromFirst){
        //Do something
     }
     else{
        //Do something
     }

ありがとう。

4

1 に答える 1

2

これは、あなたの望むことですか?

if ((bool)System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings["EnableLocation"] == true)

PSアプリケーション設定に保存され、それを操作するために、すべての値に対して単一のクラスを作成することをお勧めします。

このような:

public static class SettingsManager
    {
        private static IsolatedStorageSettings appSettings;

        public static IsolatedStorageSettings AppSettings
        {
            get { return SettingsManager.appSettings; }
            set { SettingsManager.appSettings = value; }
        }

        public static void LoadSettings()
        {
            // Constructor
            if (appSettings == null)
                appSettings = IsolatedStorageSettings.ApplicationSettings;

            // Generate Keys if not created
            if (!appSettings.Contains(Constants.SomeKey))
                appSettings[Constants.SomeKey] = "Some Default value";

            // generate other keys             

       }
   }

次に、そのクラスインスタンスを操作できます

スタートアップクラスで次のように初期化しますSettingsManager.LoadSettings();

その後、どのクラスでもそれを呼び出すだけです:

if ((bool)SettingsManager.AppSettings[Constants.SomeBoolKey])
     doSomething();
于 2013-02-04T11:18:15.700 に答える