いくつかのレイヤーから論理的に構成されたグラフィカル指向の Windows-Store-App アプリケーションがあります。各レイヤーは、独自の種類のものを描画します。
いくつかの理由で、各レイヤーを WPF キャンバスとして表すことにしました。したがって、複数のキャンバスがすべて論理的に同じ領域を共有しています。キャンバスの非が他のキャンバスにネストされています。それらはすべて、グリッド オブジェクトのセルの下の「ドキュメント アウトライン」ツリーの同じレベルにあります。
入力イベントを 1 つの特定のキャンバスにのみルーティングしたいのですが、WPF にそれを行うように命令する方法がわかりません。すべての入力イベントは常に同じキャンバスに到達し、それは望ましいキャンバスではありません。
キャンバスの ZIndex プロパティと IsHitTestVisible プロパティを操作して目的の結果を達成しようとしましたが、アプリの動作に何かが変わるようには見えません。私が何をしても、イベントは常に同じ特定のキャンバスに到達します。
目的のキャンバスを他のすべてのキャンバスの上に配置しようとし、目的のないすべてのキャンバスのヒット テストをオフにしようとしました。これらのアクションはどれも成功しませんでした。
イベントを選択したキャンバスにルーティングするようにフレームワークに指示するにはどうすればよいですか?