DataTrigger
を継承したスペシャルを作りたいTriggerBase<FrameworkElement>
。と同様に、DataTrigger
type のプロパティがクラスBindingBase
で定義されています。MyDataTrigger
その変更を追跡するためにどのように聞くことができますか?
public class MyDataTrigger : TriggerBase<FrameworkElement>
{
...
/// <summary>
/// [Wrapper property for BindingProperty]
/// <para>
/// Gets or sets the binding that produces the property value of the data object.
/// </para>
/// </summary>
public BindingBase Binding
{
get { return (BindingBase)GetValue(BindingProperty); }
set { SetValue(BindingProperty, value); }
}
public static readonly DependencyProperty BindingProperty =
DependencyProperty.Register("Binding",
typeof(BindingBase),
typeof(MyDataTrigger),
new FrameworkPropertyMetadata(null));
}
アップデート:
BindingBase
主な問題は、関連する を見つける方法がわからないことDependencyProperty
です。DP の聞き方を知っています。
void ListenToDP(object component, DependencyProperty dp)
{
DependencyPropertyDescriptor dpDescriptor = DependencyPropertyDescriptor.FromProperty(dp, component.GetType());
dpDescriptor.AddValueChanged(component, DPListener_ValueChanged);
}
デリゲートDPListener_ValueChanged
はどこですか。EventHandler
ここで、コンポーネントパラメータの値はthis.AssociatedObject
です。