本記事は書籍「基礎から学ぶ Windowsストアアプリ開発 」のフォローアップです。
チャプター4でFileOpenPickerを用いた画像ファイルの取得方法を紹介しました。
FileOpenPickerはそれ以外のケースでも利用しているのですが、スナップ状態で呼び出すと以下のように例外が発生します。
スナップ状態からはファイルピッカーを起動することができないためです。
対策として以下のようにスナップ状態の場合はファイルピッカーを起動しない方法があります。
// スナップ状態の場合はファイルピッカーを起動せずに終了する if (Windows.UI.ViewManagement.ApplicationView.Value == ApplicationViewState.Snapped) { return; } // FileOpenPickerクラスでファイルを取得する FileOpenPicker openPicker = new FileOpenPicker();
スナップ状態の場合はスナップ状態を解除可能か確認してスナップ状態の解除が不可能な場合は何もしないようにする場合は以下のように記述します。
// スナップ状態の場合はスナップ解除を試みて解除できない場合はファイルピッカーを起動せずに終了する if (Windows.UI.ViewManagement.ApplicationView.Value == ApplicationViewState.Snapped && Windows.UI.ViewManagement.ApplicationView.TryUnsnap() == false) { return; }
[書籍]基礎から学ぶ Windowsストアアプリ開発フォローアップ
Please give us your valuable comment