リフレクターを使用すると、WPF UserControlがAdjustBranchSourceをオーバーライドしていることがわかります。WPF内部:なぜUserControlがAdjustBranchSourceをオーバーライドしていますか?
internal override void AdjustBranchSource(RoutedEventArgs e)
{
e.Source = this;
}
私の非常に問題は、その問題によって引き起こされる不一致です。 エレメントがユーザコントロール内または外部にあるとき。 Sourceパラメータの動作は異なります。これは、RoutedEventによって常にソースが目標の要素になるはずです。
なぜそれがそのように実装されたのですか?
痛いかもしれません。 ButtonChromeや他の要素をpartのように取得します。その後、ビジュアルツリーから要素を推論する必要があります。かなりではありません。 – ArielBH