У меня есть странная проблема: Я пытаюсь выбрать элемент в ListView WPF, например:WPF элемент ListView выбран только после того, как отображается MessageBox
int lineIndex = 123;
scrollView.ScrollToVerticalOffset(lineIndex);
myListView.SelectedIndex = lineIndex;
Но выбор теряется по какой-то причине. Только если я отобразить MessageBox до оператора выбора, выбор работы, как это:
int lineIndex = 123;
scrollView.ScrollToVerticalOffset(lineIndex);
MessageBox.Show("msg");
myListView.SelectedIndex = lineIndex;
После нажатия на кнопку OK
в окне сообщения, получает выбранный индекс. Это потому, что окно сообщения блокирует поток пользовательского интерфейса во время его отображения? Если да, как я могу имитировать это поведение, не отображая окно сообщения?
Я не могу использовать 'ScrollIntoView', потому что мой ListView использует виртуализацию данных. Элементы ListView являются экземплярами класса. Кажется, это какая-то проблема с пользовательским интерфейсом. Потому что, когда я показываю окно сообщения и нажимаю «ОК», пользовательский поток/рабочий поток продолжается, и элемент выбирается правильно. – JohnVn