У меня есть пользовательский DependencyObject
с зарегистрированным DependencyProperty
Когда я пытаюсь связать это с другим DependencyProperty
, ничего не происходит, оно никогда не обновляется
class MyDepObj : DependencyObject
{
public static DependencyProperty CancelProperty = DependencyProperty.Register("Cancel", typeof(bool), typeof(MyDepObj), new PropertyMetadata(new PropertyChangedCallback(OnCancelChanged)));
private static void OnCancelChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
{
// Never gets called
}
public bool Cancel
{
get{return (bool)GetValue(CancelProperty);}
set{SetValue(CancelProperty, value);}
}
}
.....
{
PropertyPath IsPressed = new PropertyPath("IsPressed", null); //<-*EDIT* Was located outside of quoted code
MyDepObj do = new MyDepObj();
Binding b = new Binding();
b.Source = MyButton;
b.Path = IsPressed;
BindingOperations.SetBinding(do, MyDepObj.CancelProperty, b);
}
В качестве теста я создал расширение Grid
и приложил то же DependencyProperty
и сделал привязку в xaml. Это сработало нормально, я не знаю, является ли проблема моей привязкой или DependencyObject
, не выдается никаких ошибок, просто не обновляется