를 추가하지 않습니다 나는이 데이터 그리드에 바인딩 된 다음 ObservableCollection에 : 기본보기를 사용하여,ObservableCollection에 정렬 새로 항목
<DataGrid ItemsSource="{Binding Path=Messages}">
나는 시작에 그것을 분류 :
이public ObservableCollection<Message> Messages = new ObservableCollection<Message>;
XAML
ICollectionView view = CollectionViewSource.GetDefaultView(Messages);
view.SortDescriptions.Add(new SortDescription("TimeSent", ListSortDirection.Descending));
모두 정상적으로 작동하지만 문제는 메시지 컬렉션에 새 메시지를 추가 할 때마다 간단하다는 것입니다. y는 목록 맨 아래에 추가되며 자동으로 정렬되지 않습니다.
Messages.Add(message);
내가 잘못 했나요? 나는 항목을 추가 할 때마다보기를 새로 고침으로써 문제를 해결할 수 있다고 확신하지만, 이는 성능면에서 언급하지 않는 한 잘못된 방식으로 보입니다.
저는 ObservableCollection에 바인딩하는 것이 기본보기에 바인딩하는 것과 동일하다는 것을 알았습니다. 그 이유는 이것이 WPF가 배경에서하는 일이기 때문입니다. – Eternal21
@ Eternal21 그게 어떻게 될 수 있니? 그런 다음보기는보기의 읽기 전용 속성에 대한 기본 원본 컬렉션을 수정해야 할 것입니다 ... – McGarnagle
http://stackoverflow.com/questions/6317860/should-i-bind-to-icollectionview-or- 관측 가능한 컬렉션 – Eternal21