2

동일한 ObservableCollection에 여러 CollectionViewSource 인스턴스가 모두 있습니다. 또한 컬렉션의 필터링 된 버전 (따라서 CollectionViewSources)을 표시해야하는 몇 가지 컨트롤이 있습니다. 내가 가지고있는 문제는 CollectionViewSource가 모두 동일한 항목을 선택하도록합니다. 이것을 끌 수있는 방법이 있습니까?WPF의 CollectionViewSource에서 선택 동기화를 해제 할 수 있습니까?

감사합니다, 제이슨 루이스 단지 같은 ICollectionView에 반환됩니다

답변

0

당신이 방법을 사용하는 경우 (IM이 확실하지만 아마 않는 XAML에서 CollectionViewSource되지 않음)

CollectionViewSource.GetDefaultView(this.ItemsSource); 

여러 번 (우리의 경우 동일한 컬렉션 컬렉션에 대해 여러 번 언급하고 있음) 이는 컬렉션 뷰가 현재 항목을 추적 할 때 현재 항목이 다른보기간에 동기화 될 때 필터를 모든 항목에 적용하면 해당 항목을 모두 적용한다는 의미입니다.

당신은

new CollectionView(this.ItemsSource as IList); 

ICollectionView에, CollectionView 및 ListCollectionView를 어떻게 구현 몇 가지 유형이 있습니다를 사용하여 당신이 할 각 필터/선택을위한 CollectionView을 만들어이 문제를 해결할 수 있습니다. 위의 코드에서 필자는 기본 뷰를 만들지 않았으므로 새 뷰를 생성 했으므로 파일링/정렬은 고유합니다.

소스를 사용할 때 wpf는 컬렉션을 래핑하기 위해 컬렉션 뷰를 생성하며,이 컬렉션 뷰는 GetDefaultView 호출에서 반환되는 컬렉션 뷰로, 매일 상황에 유용하지만 가장자리 케이스에는 유용하지 않습니다. 그것은 실제로 내가 걱정 필터 아니다

+0

이 조금 더 나은 설명 BEA에서

here is a blog post, 나는 그들이 동일하게합니다. 선택한 항목입니다. 나는 그것들을 모두 동일하게 필터링했지만 다른 항목을 선택하도록하고 싶다. CollectionViewSource는 모든 선택 항목을 동일하게 동기화합니다. 정보를 제공해 주셔서 감사 드리며 작동 여부를 확인하기 위해 CollectionView 방법을 살펴 보겠습니다. 내가보기의 임의의 숫자를 가질 수 있기 때문에 나는 그렇게 생각하지 않습니다. Jason –

+0

원칙적으로 동일한 CollectionView가 선택한 항목을 추적합니다. 모든 사용자가 동일한 컬렉션보기에 바인딩되므로 동일한 항목이 모두 있습니다. –

+0

나는 그것을 두려워했다. 오, 나는 내가 필요로하는 것을 구현하는 덜 우아하지만 기능적인 방법을 찾았습니다. 도움 Aran에 감사드립니다. –