C# 如何订阅DependencyProperty更改通知

C# 如何订阅DependencyProperty更改通知,c#,wpf,C#,Wpf,我有一个静态依赖属性,我需要知道它的值何时更改,以便调用回调并在其他位置更新值。现在我不能这样做,因为回调不是静态的,依赖项更改事件是静态的 当前,当LostFocus事件触发时,它可以正常工作,但我更希望在发生更改时将其连接起来。依赖项属性更改通知会在对象中传递。您可以使用它映射到非静态变量: static void OnThePropChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args) { Yo

我有一个静态依赖属性,我需要知道它的值何时更改,以便调用回调并在其他位置更新值。现在我不能这样做,因为回调不是静态的,依赖项更改事件是静态的


当前,当LostFocus事件触发时,它可以正常工作,但我更希望在发生更改时将其连接起来。

依赖项属性更改通知会在对象中传递。您可以使用它映射到非静态变量:

static void OnThePropChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
{
     YourClass instance = (YourClass)obj;
     instance.ThePropChanged(args); // Call non-static

     // Alternatively, you can just call the callback directly:
     // instance.CallbackMethod(...)
}

// This is a non-static version of the dep. property changed event
void ThePropChanged(DependencyPropertyChangedEventArgs args)
{
      // Raise your callback here... 
}

您可能还想在DependencyProperty和“别处”之间设置一个绑定,如果这只是为了在别处获得值。

非常有效!非常感谢。