2

そのため、メニューバーにズームインボタンを配置し、いくつかのレベルの下に、ズームインコマンドを使用して、表示されているオブジェクトをズームインして再描画したいコントロールがあります。

私が読んだことからわかるように、コマンドは通常、コマンド ソース (この場合はボタン) からのプレビュー イベントでバブルアップし、コマンド ソースにトンネルを戻り、コマンドをイベント ハンドラーにバインドするコマンド バインドを探します。コマンド。ただし、私の場合、影響を与えたいコントロールはボタンから下のレベルです。

ヒットした上位レベルのコントロールにバインディングを配置し、その上位レベルのコントロールが下位レベルの関数でメソッドを実行するのは正しいですか?

コードでコマンドターゲットを子の子孫に設定するだけですっきり見えるかもしれないと思いましたが、コマンドターゲットが実際に何をしているのかはわかりません。

コマンドターゲットを次のように配置できますか:

CommandTarget="{Binding ElementName=wavegraphcanvas, Path=CommandTarget, Mode=OneWay}"

xaml で、その子要素を見つけますか?*

ボタンからバブルアップして、要素名か何かが見つかるまでトンネルを掘るだろうと思った

4

1 に答える 1

2

は、対象のCommandTarget要素がわかっている場合に適しています。あなたの場合、それは本当のようです。

コマンドを受け取ることができる要素が複数ある場合 (たとえば、コマンドを受け取る 3 つのテキスト ボックスPaste)、. を設定しても意味がありませんCommandTarget。それが のルーティング部分RoutedCommandです。コマンドを適用する適切な要素を見つけようとします。

于 2013-06-11T18:19:49.230 に答える