1

3 つのプロジェクトを持つポータブル クラス ライブラリがあります。

  • Windows Phone と Windows タブレットの共通クラスのプロジェクト
  • Windows Phone のプロジェクト
  • Windows タブレットのプロジェクト

私の一般的なプロジェクトには、フォルダー モデルとフォルダー ビュー モデルがあります。私の Windows Phone プロジェクトには、フォルダー ビューがあります。

共通プロジェクトのビューモデル フォルダー内のクラスから、Windows Phone プロジェクトのビュー フォルダー内の xaml ページに移動することは可能ですか?

NavigationService.Navigate();ここでは機能しません。これを含めるナゲットパッケージが見つかりません。

だから私の質問は:

  • xaml ページに移動する別の方法はありますか?
  • NavigationServiceまたは、共通プロジェクトに追加する nuget パッケージはありますか?
4

4 に答える 4

1

このNavigationServiceクラスは PCL では使用できません。これを確認するには、MSDN のドキュメントを参照し、[その他のバージョン] ドロップダウンをクリックします。

むしろイベントを使用する必要があります。たとえば、ビューモデル クラスに というイベントがあり、NavigationRequestedを呼び出す代わりにこれを発生させるNavigationService.Navigate()と、ビューは次のようなイベントをサブスクライブします。

ViewModel.NavigationRequested += (s, e) => NavigationService.Navigate(GetUrlFor(e.PageId));
于 2013-03-20T14:23:02.750 に答える
0

これを行う方法をほぼ正確に示すサンプルを次に示します:コードの共有: NavigationService の追加

ポータブル クラス ライブラリの使用に関するより一般的な情報のソースを次に示します。

于 2013-03-20T18:18:06.877 に答える
0

私はhttp://azrdark.wordpress.com/2010/04/23/multi-page-application-in-wpf/を複数ページのプロジェクトのいくつかに使用しました。あなたにとっても役立つかもしれません。 .

于 2013-03-20T14:18:30.220 に答える