DataView Sort - 如何知道列名未知

时间:2011-08-29 15:17:14

标签: c# sorting dataview datarow

我需要建议如何解决我在C#中对DataView进行排序时遇到的问题。

我需要在我的DataView中添加一个sort属性,因为我稍后在DataView上调用Find时需要它(需要指定一个sort属性才能工作)。我需要Find才能将DataRow正确映射到DataGridViewRow。我目前只使用行索引映射到DataGridViewRow,但是如果用户物理移动行,或者更改DataGridView(UI)中的排序顺序,这将不适用于所有情况,因为那时id不再匹配/地图。

当我创建DataView时,我加载一个DataTable来传入以进行创建。这个DataTable可以是任何形式,我不知道DataTable包含的列和行是什么。因此,如果我不知道要排序的任何列名,我就无法创建排序。

我在考虑只取第一列名称(列[0]) - 无论它是什么并使用它进行排序。但这看起来有点粗略,不是吗?

我的问题是,当列名未知时,是否有更好的方法来确定对DataView进行排序的内容?

谢谢!

1 个答案:

答案 0 :(得分:1)

我没有尝试过,但是由于它根据您传入的列名进行排序,因此您无法根据索引对其进行排序:

dataview.Sort = dataview.Table.Columns[index].ColumnName + " DESC";