数据绑定模式明确

时间:2010-01-08 13:04:55

标签: wpf xaml data-binding

我有一个包含对象列表的列表框(比方说地址)

列表框项目源绑定到此可观察集合

<ListBox x:Name="listDetails"
ItemsSource="{Binding}" 

...

然后我有一个文本框,它绑定到当前对象的名称fild

<TextBox x:Name="textBoxName" Text="{Binding Name, UpdateSourceTrigger=Explicit}"  />

所以我希望我的当前对象的Name属性不会改变,除非我明确更新它..

然而它正在更新......任何想法为什么?

这也是在一个窗口中,如果我关闭窗口并以某种方式重新打开窗口,列表框上的相同选择将被保留。

我预计一旦窗口关闭,那么它会忘记当前选择它的列表框吗?

1 个答案:

答案 0 :(得分:0)

想出如何解决它,我在listgbox中添加了一个事件

private void OnListValueChanged(object sender, SelectionChangedEventArgs e)
        {
            ListBox lb = e.Source as ListBox;
            if (lb != null)
            {
                object dc = null;
                if (lb.SelectedIndex != -1)
                    dc = lb.Items[lb.SelectedIndex];

                gridDetails.DataContext = dc;
            }
        }

网格细节上下文每次都是独立设置的。