4

C# を使用して、Visual Studio Ultimate 2012 でチェックボックスの状態を保存する方法。それは、アプリが終了した後でも、もう一度開いたときに最後に表示された状態が表示されるはずですか? 何をすべきか?コードを教えてください。

前もって感謝します.....

J.ビサリ

4

4 に答える 4

4

必要なものはすべてここにあります: http://msdn.microsoft.com/en-us/library/windows/apps/hh986968.aspx

于 2013-01-27T20:49:44.543 に答える
3

ほとんどの Windows 8 ストア アプリでは、データは大きく次の 2 つのカテゴリに分類できます。

  1. アプリ データ – 設定、ファイル、キャッシュ、セッション状態、カスタム リストなど。
  2. ユーザーデータ – ドキュメント、認証情報、写真、音楽など

この記事Data Persistence & Application Life-Cycle Managementは、どのタイプの永続性が必要かを理解するのに役立ちます。データは、キーと値のペアのアプリケーション設定として永続化できますが、アプリケーション ファイルとして保存することもできます。これは通常、アプリがアクセスできるサンドボックス ファイル システムに保存されます。

簡単な例として、次のものが必要です。

   // Reference to Local Application Settings.
   Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings; 
   // Reference to Roaming Application Settings.
   Windows.Storage.ApplicationDataContainer roamingSettings = Windows.Storage.ApplicationData.Current.RoamingSettings;  
   // Persisting simple Application Settings.
   localSettings.Values["myOption1"] = myBox1.isChecked;
   roamingSettings.Values["myOption2"] = myBox2.isChecked;

   // Reading settings back.
   var mySavedOption1 = (bool)(localSettings.Values["myOption1"]);
   var mySavedOption2 = (bool)(roamingSettings.Values["myOption2"]);

編集

動作するテスト済みの例:

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        base.OnNavigatedTo(e);

        // Reference to Local Application Settings.
        Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
        // Reading settings back.
        object mySavedOption1;
        localSettings.Values.TryGetValue("myOption1Key", out mySavedOption1);
        if (mySavedOption1 != null)
            myOption1.IsChecked = (bool)mySavedOption1;
    }

    private void myOption1_Checked_1(object sender, RoutedEventArgs e)
    {
        // Reference to Local Application Settings.
        Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
        // Persisting simple Application Settings.
        localSettings.Values["myOption1Key"] = myOption1.IsChecked;

    }

xaml で:<CheckBox x:Name="myOption1" Grid.Row="1" Checked="myOption1_Checked_1" Unchecked="myOption1_Checked_1"/>

于 2013-01-27T21:10:56.770 に答える
1

アプリが提供するローカル ストレージを使用できます。

Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
localSettings.Values["CheckboxState"] = "checked";

localSettings次に、値から状態を抽出することにより、同じものを使用して復元できます。

于 2013-01-27T20:49:53.820 に答える