Я нашел некоторые вопросы относительно этих вопросов на SO, но они меня не удовлетворяют. Они говорят об INotifyProperyChanged, но это не помогает в моем случае.
У меня есть Combobox
.
Для ItemsSource
я использую MultiBinding
и Converter
для создания ICollectionView
. ICollectionView
привязывается к ItemsSource
.
На GotFocus
-event эта привязка должна быть обновлена, поэтому конвертер снова будет запущен.
Как я могу это сделать?
Хорошо, коллеж мне помог.
Это решение:
private void theComboBox_OnGotFocus(object sender, RoutedEventArgs e)
{
ComboBox theComboBox = sender as ComboBox;
if (theComboBox != null)
{
MultiBindingExpression binding = BindingOperations.GetMultiBindingExpression(theComboBox, ComboBox.ItemsSourceProperty);
if (binding != null)
{
binding.UpdateTarget();
}
}
}
Если вы можете получить доступ к вашему ICollectionView в своем коде позади, вы можете попробовать Refresh метод...
Надеюсь, что это поможет.