我有一个组合框与项目的来源附加使用简单的绑定。加载组合框后,有没有办法刷新这个绑定?
发布于 2011-04-15 19:50:15
您可以使用绑定表达式:
private void ComboBox_Loaded(object sender, RoutedEventArgs e)
{
((ComboBox)sender).GetBindingExpression(ComboBox.ItemsSourceProperty)
.UpdateTarget();
}但是,您也可以触发更改通知,而且,如果您的集合实现了INotifyCollectionChanged (例如,在ObservableCollection<T>中实现),它将同步,因此您不需要执行任何这些操作。
发布于 2011-04-15 20:18:27
如果您使用mvvm,并且您的项目源位于您的vm中。当你想刷新时,只需为你的集合属性调用INotifyPropertyChanged即可。
OnPropertyChanged("YourCollectionProperty");发布于 2014-02-09 13:48:40
另外,如果您想用控件的新值更新数据源,则需要调用UpdateSource()而不是UpdateTarget()
((TextBox)sender).GetBindingExpression(TextBox.TextProperty).UpdateSource();https://stackoverflow.com/questions/5676202
复制相似问题