2014-01-03 5 views
0

Я ищу эту проблему на форумах, но у меня нет понятного ответа. У меня есть listView (lstInterrogateur), каждый раз, когда я нажимаю на элемент, я загружаю данные в другой список. Он отлично работает! У меня есть combbox выше (cboMatiere), которые фильтруют данные списка lstInterrogateur. Когда я выбираю элемент в поле со списком, данные с фильтрацией списка просматривают. Поэтому я сделать мой запрос и:SelectionChanged называется каждый раз, когда ItemSource задает

lstInterrogateur.ItemsSource = dt.DefaultView; 

Но эта линия вызов:

lstInterrogateur_SelectionChanged(object sender, SelectionChangedEventArgs e) 

в этом разделе кода, я получить выбранный индекс, но, индекс не является выбор анс генерируется ошибка.

Как я могу предотвратить выполнение этого события?

Спасибо.

+0

Решение: Создание 'CollectionView' только один раз, и оставить нетронутыми UI. Кроме того, вместо типа «selectionchanged» используйте 'SelectedItem =" {Binding Something} "и обрабатывайте это на уровне ViewModel. –

+1

Извините, но я не понимаю. – Alexking2005

ответ

1

Наконец, я решил мою проблему просто, я просто добавил эти 2 строки в начале процедуры:

if (lstInterrogateur.SelectedItem == null) 
       return; 
Смежные вопросы