2015-11-19 3 views
-2

У меня есть ObservableCollection, связанный с DataGrid WPF, в котором MyClass имеет логический флаг, указывающий, был ли элемент просмотрен или нет. Если элемент в DataGrid выбран, я хочу установить для свойства MyClass.Seen значение true, чтобы указать, что он был просмотрен. Первоначально, SelectedIndex DataGrid соответствует индексу ObservableCollection, но если я когда-либо сортирую DataGrid с помощью любого из различных столбцов, которые он отображает, SelectedIndex больше не совпадает с ObservableCollection.Доступ к элементам в ObservableCollection связан с WPF DataGrid

До сих пор я просматривал ObservableCollection, сравнивая значение в MyClass со значением столбца строки SelectedIndex DataGrid, чтобы найти совпадение. Есть ли лучший способ достичь этого, когда ссылка на SelectedIndex DataGrid указывает мне на правильный элемент в ObservableCollection?

+0

Вы должны задать вопрос о коде, с которым вы столкнулись. Обязательно покажите свой код. – tdbeckett

+0

Если кому-то нужно посмотреть код, сообщите мне, и я отправлю его, но @MSinger указал мне в правильном направлении с его почти немедленным ответом после моего сообщения, не желая видеть какие-либо ........ ....Благодаря –

ответ

1

Вместо использования SelectedIndex, вы пробовали использовать SelectedItem или SelectedValue? Если значение DataGridItemSource установлено на ObservableCollection, то эти свойства должны указывать непосредственно на выбранный объект.

Смежные вопросы