1

ICollectionView CurrentItem のプロパティ (関連テーブル 1..Many) から XAML で CollectionViewSource を作成しようとしていますが、次のエラーが発生しました: 'System.Windows.Data.BindingListCollectionView' ビューは並べ替えをサポートしていません。

私の VM には、UserControls の DataContext である ICollectionView があります。

public ICollectionView Clients

Client には Loans プロパティがあります。これがリストボックスにバインドしたいものです。CurrentItem のプロパティにバインドするだけで機能します。

ItemsSource="{Binding Clients/Loans}"

しかし、私の問題はソートです。ローンを物件ごとに並べ替えたいので、その一覧から CollectionViewSource を作成しようとしたのですが、上記のエラーが発生しました。

<Grid.Resources>
   <CollectionViewSource Source="{Binding Clients/Loans}" x:Key="loan_cv">
       <CollectionViewSource.SortDescriptions>
          <scm:SortDescription PropertyName="CreatedDate" Direction="Descending" />
       </CollectionViewSource.SortDescriptions>
   </CollectionViewSource>
</Grid.Resources>

VM で新しいプロパティを作成せずに XAML でこれは可能ですか?

4

1 に答える 1

0

他の誰かが同じ問題を抱えている場合は、注文できる IEnumerable<> オブジェクトを VM に作成しました。また、collectionViewSource の CurrentItem プロパティが変更されるたびに、IEnumerable<> オブジェクトをリセットします。正常に動作しますが、大きなオブジェクトを扱うと遅くなることがあります..

于 2013-03-06T03:52:29.490 に答える