WPF DataBinding没有更新?

我有一个项目,我在一个复选框的IsChecked属性绑定代码隐藏中的get / set。 但是,当应用程序加载时,由于某种原因它不会更新。 好奇,我把它剥离了它的基础,像这样:

//using statements namespace NS { ///  /// Interaction logic for MainWindow.xaml ///  public partial class MainWindow : Window { private bool _test; public bool Test { get { Console.WriteLine("Accessed!"); return _test; } set { Console.WriteLine("Changed!"); _test = value; } } public MainWindow() { InitializeComponent(); Test = true; } } } 

XAML:

       

而且,瞧,当我把它设置为真时,它没有更新!

任何人都可以提出修复,或解释原因?

谢谢,非常感谢。

为了支持数据绑定,您的数据对象必须实现INotifyPropertyChanged

此外, 将数据与演示文稿分开始终是个好主意

 public class ViewModel: INotifyPropertyChanged { private bool _test; public bool Test { get { return _test; } set { _test = value; NotifyPropertyChanged("Test"); } } public PropertyChangedEventHandler PropertyChanged; public void NotifyPropertyChanged(string propertyName) { if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } }       

代码背后:

 public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); DataContext = new ViewModel{Test = true}; } }