すべて、私は基本的な Windows 7 Phone アプリケーションを持っており、ユーザーが電話のカメラで撮影した画像をトリミングできるトリミング ページを完成させました。cameraCapTask_Completed
アプリのグローバルを設定した場合WritableBitmap
public static WriteableBitmap capturedImage;
次のように
void cameraCapTask_Completed(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK && e.ChosenPhoto != null)
{
// Take JPEG stream and decode into a WriteableBitmap object.
App.capturedImage = PictureDecoder.DecodeJpeg(e.ChosenPhoto);
写真を撮ったら、それをCropProcessPage
コンストラクターのトリミングページに渡します。ページに画像を設定します
public CropProcessPage()
{
InitializeComponent();
// Set the text and display captured image.
imageMain.Source = App.capturedImage;
これは機能します。ただし、メイン ページに戻って別の画像を再撮影/撮影すると、新しい画像を取得しようとすると、古い画像 (最初に撮影した画像) が表示されます。コンストラクターが呼び出され、カメラ キャプチャ イベント (新しい画像の設定) も呼び出されます。ここで何が間違っていますか?