ユーザーコントロールにナビゲーションサービスを渡したいです。私のアプリケーション側で
<myControl:Test NavigationService="{Binding NavigationService}"/>/>
私のUsercontrol CS側で
public NavigationService NavigationService { get; set; }
しかし、それは機能していないようで、ロードするとすぐにアプリケーションがクラッシュします。
ユーザーコントロールにナビゲーションサービスを渡したいです。私のアプリケーション側で
<myControl:Test NavigationService="{Binding NavigationService}"/>/>
私のUsercontrol CS側で
public NavigationService NavigationService { get; set; }
しかし、それは機能していないようで、ロードするとすぐにアプリケーションがクラッシュします。
それは本当に厳しいです... わかりました、あなたはこれについて言及していませんが、UserControlから他のページ/ ucへの移動の問題を解決しようとしていると思います(本当ですか?)。
いくつかの編集:
本当にUserControl で使用したい場合は、ページのインスタンスをコントロールに転送する必要があります。しかし、私の経験では、通常、これは必要ありません。私はむしろこのようにすることをお勧めします:
UserControl には、タップ/クリック イベントを含むコントロールが確実に含まれます。ユーザーコントロールクラスにロジックを記述する必要はありません。ユーザー コントロールをページに追加するときは、そこで宣言する必要があります。お気に入り:
someUserControl.buttonNavigate.MouseLeftButtonUp += new MouseButtonEventHandler(buttonNavigate_Click);
そして、ナビサービスを利用することができます。
NavigationService.Navigate(new Uri(...));
それが最も簡単な解決策です。それが役に立てば幸い。
他にもありますが、これで問題が解決することを願っています。