問題タブ [win-universal-app]
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.
windows-runtime - 「OnBackKeyPress」に相当するものは何ですか
Windows Phone 8.0 では、これを使用して戻るボタンを処理しました。
このイベントは「ページ」コントロールには存在しません。WP 8.1 で戻るボタンのクリックを処理するにはどうすればよいですか?
xaml - XAML アプリ、MVVM、および JSON サンプル データでデータ バインディングを使用するにはどうすればよいですか?
ユニバーサル アプリ テンプレートには、JSON のサンプル データと、その JSON ファイルを読み込んでモデルを提供する SampleDataSource があります。これは素晴らしいことですが、私は MVVM を使用しており、PropertyChange 通知が必要です。
私の狙いはこれ
デザインタイム
- json ファイルからサンプル データをロードします (私の Web サービスは JSON でデータを提供するので、これは非常に役立ちます)
- サンプル データを UI に表示する
ランタイム
- 私のライブWebサービスからJSON(実際にはPBF)データをロードします
- UI に実際のデータを表示する
設計時にデータバインディングがどのように機能するかを理解するのに苦労しています。
JSON をモデルにロードして処理するためのコードが必要ですか?
JSON は ViewModel ではなく DataModel に変換されますが、これは SampleData インフラストラクチャでサポートされていますか?
navigation - ユニバーサル アプリの NavigationService
コードのさまざまな部分で次のコードを使用する Windows Phone 8.1 プロジェクトを作成しました。
このコードをユニバーサル アプリに移植しようとしたところ、NavigationService を解決できないというエラーが表示されました。ユニバーサル アプリの世界でナビゲーションを処理するにはどうすればよいですか?
windows - Windows Phone アプリケーションをユニバーサル アプリケーションに変換する
最近、Microsoft は Visual Studio 2013 でユニバーサル アプリケーションを作成する機能を発表しました。既存の Windows Phone 8 アプリケーションをユニバーサルに変換する簡単な方法はありますか、それとも新しいプロジェクトを作成してコードを手動で適切に移動する必要がありますか?
c# - パスワードが設定されているかどうかを確認するWindows Phone 8.1は、そうでなければ新しいページをロードします
MainPage.xaml ファイルであるログイン ページがあるという点で、この人の質問と非常によく似た状況がありますが、ユーザーがまだパスワードを設定していない場合にロードする SetPassword.xaml という別のページがあります。基本的に、アプリがインストールされた後、これが初めて読み込まれます。
SOでさまざまなソリューション(リンクしたものを含む)を試すのに何時間も費やしましたが、どこにもたどり着けず、ソリューションの多くはWP7またはWP8のいずれかであり、新しいものについては同様のものは解決されていないようですWP8.1。
これは、パスワードが設定されているかどうかを確認するために行っている Windows.Storage を使用した基本的なチェックです。
これをpublic MainPage()クラスに追加すると、デバッグ メッセージで「パスワードが設定されていません」を返すアプリで問題はありませんが、this.frame.Navigate(typeof(SetPassword))ナビゲーションは SetPassword ビューをロードしません。
私もこの方法を で試しましたがOnNavigatedTo、まったく同じ結果が得られました。
私の App.xaml ファイルでも、さまざまな方法を試しましたが、同じ結果が得られました。デバッグ メッセージは取得できますが、探しているナビゲーションは取得できません。Application_Launching ここでメソッドを実装することと、RootFrame.Navigating+= RootFrameOnNavigating; ここで条件付きナビゲーションを実装することを検討しましたが、明らかに何かが欠けています。
条件値に基づいてナビゲーションを機能させるために、賢い人たちが助けてくれることを願っていますか?
c# - Listbox - ItemsSource に入力した後、最初の要素を選択できない
私は WP8.1 に取り組んでおり、Listbox の stage 動作を見つけました。再現しやすくするために、コードをここに配置しました。この問題は、デバイスとエミュレータの両方で発生します。
ObservableCollection にバインドされた Listbox があり、ボタンをクリックすると項目が入力されます。
初めてリストを埋めるときは、すべて問題ありません (写真 1)。しかし、ボタンを 2 回押すと、最初の要素ではなく 2 番目の要素が表示されます (写真 2)。わかりました-上にありますが、スクロールできます。指(マウス)を押したままにすると、リストをスクロールして存在を確認できますが、スクロールを停止すると、リストが非表示になります(2番目の要素にスクロールします)最初のエレメント。また、アイテムを選択すると、指を離すと最初の要素が再び非表示になります。リストを数回上下に移動すると、修復されて正常に動作します。
問題を再現する方法:
- 2番目のボタンを1回クリックして、リストを埋めます
- リストを下にスクロールして、最初の要素を非表示にします (これは重要です) 。
- もう一度 2 番目のボタンを押します
- リストを上にスクロールして最初の要素を確認し、指を離します
写真1

写真2

写真3

問題は非同期タスクに関係しているようです(そのため、この質問に非同期タグも付けました)-行がなければawait Task.Delay(100);、コードは正常に機能するようです。
誰が何が間違っているのか考えていますか?
編集- その他の試み
また、を介して移入プロセスを実行しようとしましたがDispatcher、成功しませんでした - 問題が存在します。
また、一時的な(ObservableCollectionではなく)データを入力しようとしましたが、Listから戻った後、async TaskObservableCollectionにデータを入力しました-問題は解決しません。
編集 2 - acync タスクで作成された returnig リストもあまり役に立ちません。
EDIT 3 - Windows Phone 8.1 Silverlight で同じコードを実行して問題なく動作することを確認しました。
c# - Windows Universal App での現在のデバイスの検出
リリースされた VS 2013 Update 2 を試して、サンプルのユニバーサル アプリケーションを構築しています。
ユーザー コントロールを作成し、両方の MainPages に GridViews を追加しました (Windows Phone と Windows 8)。
アプリが Windows Phone で実行されているときに、コードを介していくつかのことを変更したいと考えています。
次のような方法はありますか: