2013-02-28 25 views
1

我想从ICollectionView CurrentItem的属性(相关表1..Many)创建XAML中的CollectionViewSource,但我得到这个错误: 'System.Windows.Data.BindingListCollectionView'view不支持排序。从ICollectionView CurrentItem的属性创建CollectionViewSource

在我的VM中,我有ICollectionView,这是UserControls的DataContext。

public ICollectionView Clients 

客户端拥有贷款属性,这就是我想绑定到列表框。 它的工作原理,如果我只是绑定到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> 

这是否可能在XAML中创建VM中的新属性?

回答

0

如果其他人有同样的问题,我只是在VM中创建了一个IEnumerable对象,可以进行排序。每次在collectionViewSource上更改CurrentItem属性时,我都会重置IEnumerable对象。它工作正常,但与大物体的一段时间,它可能会很慢..