在任何列上排序ListView

时间:2015-03-20 00:54:46

标签: c# winforms sorting listview

我的问题的答案来自TaW的评论。 MSN文章中显示的示例非常有效,可以解决我的问题。当然我省略了第5步,因为这项工作已经在我打开问题时提交的代码中完成了。谢谢TaW

我有一个3列列表视图,并希望通过单击列标题对任何列进行排序,并且不知道如何进行操作。所有3列都是字符串。

https://msdn.microsoft.com/en-us/library/ms996467.aspx说的是一个例子,但我不理解。当我将那块代码复制并粘贴到我的程序中时,我得到一个语法错误[使用泛型类型'system.Collections.Generic.IComparer'需要1个类型参数]说我不知道​​我是否在正确的轨道或如何解决。

    private void getlvAMFiles()
    {
        //lvAM.Items.Clear();
        DataView view = new DataView(tblvAttributes);
        DataTable distinct = view.ToTable(true, "DWPhysicalTableName", "DWPhysicalSchemaName");
        if (cbRegion.SelectedIndex < 0) return;
        DataView view1 = new DataView(tblvAttributes);
        DataTable distinctValues = view1.ToTable(true, "dwPhysicalSchemaName","dwPhysicalTableName");
        foreach (DataRow row in distinctValues.Rows) 
        { ListViewItem item = new ListViewItem(row["dwPhysicalSchemaName"].ToString());
        item.SubItems.Add(row["dwPhysicalTableName"].ToString().Substring(row["dwPhysicalTableName"].ToString().LastIndexOf("F") + 1)); 
            item.SubItems.Add(row["dwPhysicalTableName"].ToString());
            lvAM.Items.Add(item); 
        }
    }

0 个答案:

没有答案