我对 C# 和 WPF 完全陌生,我正在努力使用数据绑定。我有一个实现 INotifyPropertyChanged 的 MyClass;所以每次我更改属性值时,都会在我的 UI 中更新。然后我将堆栈面板的 DataContext 绑定到 MyClass 的对象。像这样:
<StackPanel Name="stackPanel1" DataContext="{Binding}">
<TextBlock Name="textBlock1" Text="{Binding Path=Title, Mode=OneWay}" />
</StackPanel>
在后面的代码中我这样做:
item = new MyClass();
stackPanel1.DataContext = item;
并且绑定工作正常。如果我用另一个替换我当前的绑定源对象,我必须通过再次键入 datacontext 绑定来手动设置它:
item = new MyClass();
stackPanel1.DataContext = item;
item1 = new MyClass();
.
. //manipulate item1
.
if (item1 is ok)
item=item1;
stackPanel1.DataContext = item;
有没有更好的方法来替换我的源对象并更新所有关联的绑定?