【发布时间】:2012-10-18 05:58:12
【问题描述】:
代码sn-p:
xaml
<TextBlock Grid.Row="0" Text="{Binding Path=NodeType}"></TextBlock>
<Button Name="bt" Grid.Row="1" Click="bt_Click">click</Button>
c#
public FamilyMemberInfo MemberInfo;
public MainWindow()
{
InitializeComponent();
MemberInfo = new FamilyMemberInfo();
MemberInfo.NodeType = "aa";
this.DataContext = MemberInfo;
}
private void bt_Click(object sender, RoutedEventArgs e)
{
//MemberInfo.NodeType = "bb";
FamilyMemberInfo mi2 = new FamilyMemberInfo();
mi2.NodeType = "bb";
MemberInfo = mi2;
}
如果我将 NodeType 更改为“bb”,则文本块也会更改,但如果我创建一个平淡无奇的新对象并将属性 NodeType 设置为“bb”,然后将其分配给 MemberInfo,则不会更新文本块。谁能为我解释一下?提前致谢。
假设“FamilyMemberInfo”类有 20 个属性,所有属性都与 UI 上的元素(文本块、组合框等)绑定,我从其他地方获得了 FamilyMemberInfo 的实例,我想简单地将其分配给上面的代码中的 MemberInfo 以使 UI 相应地更新,如何使其工作?
谢谢。
【问题讨论】: