动态修改CollectionViewSource SortParameter

时间:2017-01-12 14:28:53

标签: c# wpf mvvm collectionviewsource

我目前正在实施遵循MVVM样式编码的CAN监视器。 它有各种标题,如ID,TimeStamp,Direction ...... 日志记录功能设计用于超过50000行跟踪,因此通过OrderBy函数进行排序对我来说太慢了。在正确的位置迭代并添加每个新消息也是不可行的。

现在我设计了Sort via CollectionViewSource 。但问题是我一次只能决定一个参数。我需要根据用户在标题上的点击次数对sort参数进行动态更改。

<CollectionViewSource IsLiveSortingRequested="True" x:Key="Items" Source="{Binding MonitorList}" >
        <CollectionViewSource.SortDescriptions>
            <scm:SortDescription PropertyName= "CanCobIdString" />
        </CollectionViewSource.SortDescriptions>
    </CollectionViewSource>

。 。

<ItemsControl Name="ItemsControl_Monitor" Grid.Column="0" ItemsSource="{Binding Source={StaticResource Items}, UpdateSourceTrigger =PropertyChanged}" ItemTemplate="{StaticResource CanMessageTemplate2}" VirtualizingPanel.IsVirtualizing="true"

我尝试绑定PropertyName,但我相信这不是正确的方法。是否有其他方法可以根据用户点击更改PropertyName。 (我只需要能够在运行时更改PropertyName字符串)

0 个答案:

没有答案