我有一个包含对象列表的列表框(比方说地址)
列表框项目源绑定到此可观察集合
<ListBox x:Name="listDetails"
ItemsSource="{Binding}"
...
然后我有一个文本框,它绑定到当前对象的名称fild
<TextBox x:Name="textBoxName" Text="{Binding Name, UpdateSourceTrigger=Explicit}" />
所以我希望我的当前对象的Name属性不会改变,除非我明确更新它..
然而它正在更新......任何想法为什么?
这也是在一个窗口中,如果我关闭窗口并以某种方式重新打开窗口,列表框上的相同选择将被保留。
我预计一旦窗口关闭,那么它会忘记当前选择它的列表框吗?
答案 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;
}
}
网格细节上下文每次都是独立设置的。