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

时间:2014-03-06 19:29:12

标签: c# wpf sorting mvvm datagrid

我有一个DataGrid绑定到一组模型。我的模型有一个名为Position的字符串属性,它的类型为string,但包含一个整数值。

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

无论如何在没有处理代码隐藏中Sorting的{​​{1}}事件的情况下处理这个MVVM样式? 请记住,我不能改变财产的类型。

1 个答案:

答案 0 :(得分:4)

如果您不想在代码隐藏中执行此操作,我认为您需要自定义排序行为,如此SO帖子所示...

https://stackoverflow.com/a/18218963/1246574

我知道你说你不想打破MVVM所以你不想在代码隐藏中处理排序事件。即使这样,如果其他人想知道如何这样做,这个SO帖子显示了......

https://stackoverflow.com/a/2130557/1246574