如何在 ListView 中对记录进行排序

问题描述 投票:0回答:1

我想使用以下课程:

internal class IPComparer : IComparer<string>
{

    public int Compare(string a, string b)
    {
        return Enumerable.Zip(a.Split('.'), b.Split('.'),
            (x, y) => int.Parse(x).CompareTo(int.Parse(y))).FirstOrDefault(i => i != 0);
    }
}

通过重新定义 ListViewItemSorter 方法对 C# ListView 中的 IP 地址进行排序。

你能告诉我该怎么做吗? 谢谢

c# listviewitem
1个回答
0
投票

在 .NET 中,存在一个类,您可以在其中使用比较器,以便可以根据插入对队列进行排序:PriorityQueue(IComparer) 类。这可能是您想尝试的一个很好的替代方案。

表示具有值和优先级的项目的集合。出队时,优先级值最低的项目将被删除。实现一个数组支持的四元最小堆。每个元素都以关联的优先级入队,该优先级确定出队顺序。优先级最低的元素首先出列。请注意,该类型不保证相同优先级元素的先进先出语义。

© www.soinside.com 2019 - 2024. All rights reserved.