基本的に、カスタム コントロールがありFooControl
ます。
public class FooControl : ItemsControl
{
//Code
}
イベント処理を追加する必要がありますが、RoutedEvent を使用するよりも、代わりに Commanding を使用することをお勧めします。ただし、これを行う方法がよくわかりません。Bar1Property (DependencyProperty) が変更されたときに、Execute に関連付けられた実行プロパティが発生するようにしたい場合。.NET Reflector を介して ButtonBase コードを調べたところ、非常に複雑に見えます。コマンドを追加するのはこれほど複雑ですか?? 明らかに、CanExecuteChanged が変更されているかどうかに応じて、コントロールがそれ自体の特定の部分を有効/無効にするようにする必要もあります。しかし、それは別の部分だと思います。
これまでのところ、私の OnBar1Changed 関数は次のとおりです...
private static void OnBar1Changed(DependencyObject obj, DependencyPropertyChangedEventArgs e)
{
FooControl element = (FooControl)obj;
//What to do here?
}