問題タブ [navigateuri]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
796 参照

c# - NavigateService.Navigate() を呼び出すと、Windows Phone アプリは MapUri() を 2 回呼び出します。

最近、IE からファイルを開くときにアプリケーションの分離ストレージにファイルを保存するためのカスタム UriMapper を追加しました。このコードは次のようになります。

InitializePhoneApplication()で私は

もちろん、 WMAppManifest.xmlにExtensionsタグを追加しました。

これはすべて正常に動作します...しかし、奇妙な動作に気付きました。IE からファイルを開くたびに、ファイルのコピーが 2 つ取得されます。オーバーライドされた MapUri 内にブレークポイントを配置すると、アプリケーションが IE から自動起動するたびに 2 回ヒットします。

これをさらに調査し始めたとき、 NavigateService.Navigate()を呼び出すたびにこれが発生することに気付き ました。しかし、NavigateService.GoBackを呼び出すときはそうではありません。

なぜこれが起こっているのか誰にも分かりますか?Navigate()が呼び出されたときにMapUri()が 2 回呼び出されるのはなぜですか? ページの新しいインスタンスが作成されたときに発生するものですか? ( Navigate()を呼び出すと、呼び出されたページの新しいインスタンスが作成されますが、GoBack()を呼び出すと、移動元のページの既に作成されたインスタンスが取得されることに気付きました)。

編集:
私は今、ゼロから小さなテストアプリケーションを作成しました。結果は同じです。UriMapperBaseから継承し、 MapUriメソッドをオーバーライドするクラスがある場合、アプリケーションに移動するか、アプリケーションでNavigateService.Navigate()を呼び出すたびに、 MapUriが 2 回呼び出されます。

私の問題の明らかな回避策は、もちろん、アプリケーションがナビゲートする別のページを用意し、そのページがSaveFileToIsolatedStorage()を呼び出すことです。しかし、それでは、なぜ動作がそのままなのかという疑問にはまだ答えていません。

0 投票する
1 に答える
47 参照

c# - 写真撮影はいつですか?

写真を撮ってから次の画面に移動して、好きかどうかを判断する wp8-app に取り組んでいます。現在のアプローチは次のとおりです。

私のLumia 520では時々クラッシュしました。待機時間を 2,5 秒に増やすと、機能します。しかし、もちろん、これはそれを行う方法ではありません。

-Eventをキャッチし、void cam_CaptureImageAvailable(object sender, Microsoft.Devices.ContentReadyEventArgs e)すべてが完了してすべてのストリームが閉じられた後にナビゲートしようとすると、まだNavigateFailed-State になり、アプリがクラッシュします。

私の質問は次のとおりです。すべての作業が完了し、静的な時間ベースの値を使用せずにナビゲートできることを保証する他の便利なイベントはありますか?