私はWPFで作業しています。私のビジュアル ツリー階層は次のとおりです。 RadDiagram > RadDiagramShape > MyControl RadDiagramShape のコンテンツは mycontrol です。
myControl クラスでは、(MouseLeftButtonDown) イベントを処理しました。その中にドラッグ アンド ドロップ コードを配置しました (別の場所で必要です)。つまり、トンネリングやバブリングではなく、ダイレクト イベントです。
RadDiagramShape のコンテンツであるカスタム コントロールを移動している間、RadDiagram で移動しません (ドラッグしようとしています)。これは、MouseLeftButtonDown が MyControl 内で処理されているためです。 これにより、イベントがビジュアル ツリーにバブリングするのを防ぎ、親ハンドラーにイベントが通知されるのを防ぎます。
RadDiagramShape と RadDiagram のイベントを as として処理しようとしましたが、e.Handled = true;
MouseLeftButtonDown であり、ルート要素内で処理されるため、何もしませんでした。バブルやトンネルは発生せず、移動コードをオーバーライドしませんでした。上書きしたくない。以前に試してみたのですが、組み込みの WPF と同じわずかな動きが得られなかったからです。
ルート要素で MouseLeftButtonDown イベントをブロックし、コンテナ (親) レベルでイベントを発生させるにはどうすればよいですか?