我已经创建了通用WPF控件,因此布局都是在代码中定义的。一切都很好,并且我添加了可以在第一轮工作的绑定,例如:

private bool btEnabled { get { return SOME_LOGIC; } }

Button bt = new Button { Content = "Button" };
bt.SetBinding(Button.IsEnabledProperty, new Binding { Source = btEnabled, Mode = BindingMode.OneWay });


每当发生影响btEnabled属性的事件时,我都将其称为INotifyPropertyChanged,但PropertyChanged事件始终为null,我无法弄清楚为什么绑定未注册PropertyChanged事件。

有任何想法吗?

谢谢

最佳答案

我看到btEnabled是一个属性,太私人了!

所以大概有两个错误...

您的Binding应该设置为Path="btEnabled"而不是Source=btEnabled
并且您的btEnabled属性应该是公共的。

09-06 05:35