我有一个自定义对象 Foo ,它带有一个名为 Flagged 的布尔属性,当有人在文本框中成功键入内容时,它会将 flagged 更改为 true 并用一些文本更新屏幕上的另一个文本块。问题是我可以让它加载初始数据,但是当用户成功输入一些东西来翻转标志时没有任何反应。
我必须在后面的代码中完成大部分工作,并且我已经在我的对象 Foo 上实现了 INotifyPropertyChanged。我下面的代码有什么问题?
谢谢。
private Border CreateNewBorder()
{
Border b = new Border();
TextBlock tb = new TextBlock();
tb.TextAlignment = TextAlignment.Center;
b.Style = (Style)this.FindResource("myBorder");
tb.SetBinding(TextBlock.TextProperty, CreateBinding());
b.Child = tb;
return b;
}
private Binding CreateBinding()
{
Binding bind = new Binding();
bind.Source = Foo;
bind.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
bind.Mode = BindingMode.TwoWay;
bind.Path = new PropertyPath("Flagged");
bind.Converter = new BoolToStringConverter();
return bind;
}