1

4 つの画像を追加しました。デフォルトでは背景画像があります。ボタンを使用して、背景をランダムに変更しました。それはパノラマページであり、アプリに最後の状態を保存させたいだけです(つまり、最後の背景画像を記憶させる)。アプリがアクティブになっている場合、最後の画像はデフォルトの背景画像にする必要があります。既にいくつかの画像をアプリに追加しているので、Isolated Storage は必要ないと思います。必要なのは、現在の背景画像 (imguri) がbg1.jpgで、アプリを終了して再起動した場合、デフォルトの背景画像はbg1.jpgである必要があります。助けが必要!

private void BackgroundBrowser_Click(object sender, RoutedEventArgs e)
{
    string imguri = "";

    click_count = click_count % 5;
    switch (click_count)
    {
        case 0: imguri = "Image/bg.jpg"; break;
        case 1: imguri = "Image/bg1.jpg"; break;
        case 2: imguri = "Image/bg3.jpg"; break;
        case 3: imguri = "Image/bg2.jpg"; break;
        case 4: imguri = ""; break;
    }
    click_count++;

    var app = Application.Current as App;
    app.appBmp = new BitmapImage(new Uri(imguri, UriKind.Relative));
    ImageBrush imageBrush = new ImageBrush();
    imageBrush.Stretch = Stretch.UniformToFill;
    imageBrush.Opacity = 0.7;
    imageBrush.ImageSource = app.appBmp;
    this.LayoutRoot.Background = imageBrush;
    app.appbrush = imageBrush;
    app.backchanged = true;
}
4

4 に答える 4

1

アプリケーションまたはユーザー設定を使用できます。プロジェクトのプロパティに移動し、[設定]タブをクリックします。次に、Stringを型として設定名LastImagePathを作成します。

ここに画像の説明を入力してください

この行の直前:

var app = Application.Current as App;

これを追加して、LastImagePath設定へのパスを保存します。

Properties.Settings.Default.LastImagePath = imguri;
Properties.Settings.Default.Save();

最後の画像をロードするには、次のように設定をロードできます。

if (!(Properties.Settings.Default.LastImagePath == null))
   imgpath = Properties.Settings.Default.LastImagePath;
于 2012-08-11T14:29:04.307 に答える
0

System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettingsDelegateXが示したのと同様の方法で使用することもできます。設定をどのように「保存」するかに関係なく、隔離されたストレージスペースに保存されることに注意してください。プロパティ/ApplicationSettings/ Sessionなどのプロパティまたはクラス名として適切にラップおよび非表示になっていますが、実際にはデータはISOに到達し、デバイスからアプリをアンインストールすると蒸発します。

于 2012-08-11T14:34:50.290 に答える
0

アプリケーションの終了時に最後の画像名をファイルに保存し、ファイルから画像名を読み取り、アプリケーションの再起動時にそれをロードする必要があります。これが最も簡単な解決策だと思います。

于 2012-08-11T13:23:02.257 に答える
0

ユーザー/アプリケーション設定に保存されているすべてのアイテムは、シリアル化可能である必要があります (ドキュメントの下部にメモがありますここ)。シリアライゼーションの詳細については、こちらをご覧ください。

于 2014-06-27T20:16:56.773 に答える