【发布时间】:2010-11-27 07:33:34
【问题描述】:
以下是 XAML 文件的相关部分:
xmlns:local="clr-namespace:BindingTest"
<ListBox x:Name="myList"
ItemsSource="{Binding Source={x:Static local:MyClass.Dic},
Path=Keys,
Mode=OneWay,
UpdateSourceTrigger=Explicit}">
</ListBox>
MyClass 是一个公共静态类,Dic 是一个静态公共属性,一个字典。
在某个时刻,我将项目添加到 Dictionary 并希望 ListBox 反映更改。
这是我想使用但不起作用的代码:
BindingExpression binding;
binding = myList.GetBindingExpression(ListBox.ItemsSourceProperty);
binding.UpdateTarget();
此代码可以代替:
myList.ItemsSource = null;
myList.ItemsSource = MyClass.dic.Keys;
我更喜欢使用 UpdateTarget,但我无法让它工作。
我做错了什么?
【问题讨论】:
标签: c# .net wpf data-binding listbox