相关疑难解决方法(0)

每列的WPF DataGrid CustomSort

我有一个绑定到CollectionViewSource的WPF DataGrid,它封装了一个ObservableCollection.此CollectionViewSource有两个主要目标:

1)按T的特定属性对每个项目进行分组.我在GroupDescription中使用ValueConverter来获取我想要的分组行为.

2)通过a)主要对组名称(如上定义)和b)各个组项目对网格进行排序.我通过将自定义IComparer附加到CollectionViewSource的'CustomSort'属性来实现此目的.

这在大多数情况下都很有用,但是只要单击列标题,就会覆盖排序逻辑.我不想禁用排序,但是我想知道是否可以为特定列分配自定义排序顺序?

为了使事情更加清晰,假设用户单击"ColumnA" - 此时,我的CustomSorter封装的排序逻辑被覆盖,DataGrid现在按该属性排序.我宁愿颠倒CustomSorter的逻辑,而不是按所选属性进行排序.

.net c# wpf datagrid collectionviewsource

14
推荐指数
4
解决办法
2万
查看次数

将文本列排序为数字列 WPF MVVM

我有一个DataGrid绑定到模型集合的对象。我的模型有一个名为 stringPosition类型的 string 属性,但包含一个整数值。

我的问题是,在对此列进行排序时,值被排序为1, 10, 2而不是1, 2, 10.

有没有处理这种 MVVM 风格而不处理代码隐藏Sorting事件DataGrid?请记住,我无法更改属性的类型。

c# sorting wpf datagrid mvvm

2
推荐指数
1
解决办法
3729
查看次数

标签 统计

c# ×2

datagrid ×2

wpf ×2

.net ×1

collectionviewsource ×1

mvvm ×1

sorting ×1