2012-06-14 4 views
0

У меня есть DataGrid, на мой взгляд связанный с ObservableCollection<>. Связывание работает.не может редактировать ячейку в datagrid WPF

Проблема заключается в том, что я не могу изменить любую ячейку и не понимаю, почему ...

Вот мой XAML:

<DataGrid ItemsSource="{Binding ClientSpecifications, Mode=TwoWay}" /> 

только это. Больше ничего. Но это не сработает. Я работаю с WPF, .NET4, EF.

ответ

0

Согласно этой статье: Overview of the editing features in the WPF DataGrid

сетке данных использует IEditableCollectionView<T> (который ObservableCollection<T> орудия) - но для того, чтобы объекты, которые будут доступны для редактирования, вы должны убедиться, что ваш объект T реализовала IEditableObject Interface. Когда вы это сделаете, Datagrid распознает элементы коллекции как доступные для редактирования и позволит вам изменить их в сетке.

+0

К сожалению, это ничего не изменит:/ Когда я привязываю свою коллекцию к спискуView, она отлично работает. – Thomas

+0

Listview - это совершенно другой элемент управления и не требует этого интерфейса, но также не поддерживает операции Edit, Cancel Edit, Delete, Add и etc, поддерживаемые DataGrid. Можете ли вы опубликовать свою реализацию интерфейса IEditableObject, чтобы я мог понять, что не так? – Alain

+0

все в порядке, я поменял его на listView. Я не хочу, чтобы пользователь удалял или добавлял элементы. Но большое спасибо за вашу помощь. Я попробую это позже (когда у меня будет больше времени). – Thomas

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