Csharp/C#教程:使用ObjectListView进行自定义排序分享


使用ObjectListView进行自定义排序

假设我有一个包含3列的objectListView

ArticleNumber | OrderNumber | Status 8080 | 123.456.789 | Delivered 80 | 456.789.101 | Pending 901 | 11.111.111 | Delivered 

使用自动排序,较小的商品编号将在更大的商品编号下,因此它将排序8080,80,901或901,80,8080,但我希望最小的数字将在顶部。

在OrderNumber上也一样。

状态不起作用。 On,它只是在我按下ColumnHeader时对ArticleNumber进行排序,所以我想根据文本对Status进行排序。

我想我需要一个CustomSorter来完成那个任务,但我找不到如何使用它,我找不到一个很好的例子,OLV的食谱没有帮助我。

你有一个例子告诉我如何做到这一点?

使用自定义排序器的示例:

 MyOlv.CustomSorter = delegate(OLVColumn column, SortOrder order) { // check which column is about to be sorted and set your custom comparer if (column == ArticleNumber) { MyOlv.ListViewItemSorter = new ArticleNumberComparer(order); } }; class ArticleNumberComparer : IComparer { SortOrder _Order; public ArticleNumberComparer(SortOrder order) { _Order = order; } public int Compare(object x, object y) { // perform you desired comparison depending on the _Order } } 

请注意,Compare()中的x和y的类型为ListViewItem。 您可以看一下如何访问底层模型对象。

上述就是C#学习教程:使用ObjectListView进行自定义排序分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1029636.html

(0)
上一篇 2022年1月12日
下一篇 2022年1月12日

精彩推荐