0

私の Windows Phone 7 アプリケーションでは、デフォルトの背景画像を変更するボタンを作成しました。ユーザーはアプリで独自のカスタム スキンを使用できます。それは完璧に機能しました。ただし、ユーザーがアプリを終了して再起動すると、アプリケーションの背景画像がデフォルトに変更されます。しかし、私が必要としていたのは、アプリケーションには、ユーザーが選択した最後の画像がなくても起動されている必要があるということです。の回。誰でもこれで私を助けることができますか?お疲れ様でした!

private void BackgroundBrowserIcon_MouseEnter(object sender, MouseEventArgs e)
    {
        var PhotoChooser = new PhotoChooserTask();
        PhotoChooser.Completed += new EventHandler<PhotoResult>(PhotoChooser_Completed);
        PhotoChooser.Show();
    }

    void PhotoChooser_Completed(object sender, PhotoResult e)
    {
        {
            if (e.TaskResult == TaskResult.OK)
            {
                System.Windows.Media.Imaging.BitmapImage bmp = new System.Windows.Media.Imaging.BitmapImage();
                bmp.SetSource(e.ChosenPhoto);
                var app = Application.Current as App;

                if (app == null)
                    return;
                var imageBrush = new ImageBrush { ImageSource = bmp, Opacity = 1.0d };
                this.LayoutRoot.Background = imageBrush;
                app.backchanged = true;
                app.appbrush = imageBrush;
            }
        }
    }
4

2 に答える 2

1

IsolatedStorageSettings を使用して、最後に選択した写真を保存し、アプリの起動時に読み込みますか?

更新: この投稿をチェックして、達成しようとしているものを正確にコーディングする方法を説明しています: http://www.windowsphonegeek.com/tips/All-about-WP7-Isolated-Storage---Read-and-Save -キャプチャー画像

于 2012-05-25T03:32:29.323 に答える
0

この記事をチェックして、IsolatedStorageSettingsを保存する方法を確認してください。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using System.IO.IsolatedStorage;


namespace F5debugWp7IsolatedStorage
{
   public partial class MainPage : PhoneApplicationPage
   {
    // Constructor
    public MainPage()
    {
        InitializeComponent();
    }

    private void button3_Click(object sender, RoutedEventArgs e)
    {
        IsolatedStorageSettings ISSetting = IsolatedStorageSettings.ApplicationSettings;

       if (!ISSetting.Contains("DataKey"))
        {
            ISSetting.Add("DataKey", txtSaveData.Text);
        }
        else
        {
            ISSetting["DataKey"] = txtSaveData.Text;
        }
        ISSetting.Save();
    }
}

}

于 2012-05-25T10:25:39.783 に答える