私は、MainPageを含む複数のページで再利用されるユーザーコントロールを持っています。私はユーザーコントロールのいくつかのロジックを実行したいと思いますの場合、ユーザーコントロールのインスタンスの現在のページでイベントが発生します。ロジックはページの内容にかかわらず同じなので、ユーザーコントロールが親ページからデリゲートを呼び出さないようにしたいと思います。アプリケーションの現在のページタイプはユーザーコントロールのこのインスタンスがの子であることをページに等しい場合、私はチェックしてるif
声明でUWPユーザーコントロールからコードビハインドからページタイプを取得
//Event method in the user control:
private void Dummy_Event(object sender, DummyEventArgs e)
{
// Handle global application events only if this page is active
if (((Frame)Window.Current.Content).CurrentSourcePageType == typeof(/* PAGE TYPE */))
{
//DO STUFF
}
}
。
私はthis.Parent
の繰り返し呼び出しを行うことができますが、最終的にPage
要素に到達しても、私が知る限りどのページにあるかを示す方法はありません。
誰にもアイデアはありますか?
booleanプロパティをusercontrolに追加し、この追加ロジックを実行する親ページのxamlでtrueに設定できますか? –
Sry、私はあなたが求めたものを手に入れませんでした。あなたはすでに 'CurrentSourcePageType'でページタイプを取得しています。それではほかに何が欲しいですか? –
@ ElvisXia-MSFT 'CurrentSourcePageType'は現在のページですが、すべてのページがキャッシュされていて、コードが実行されないようにするために、ユーザーコントロールのインスタンスが属するページと比較する必要があります特定のページがアクティブなページではありません。 – ohgross