数据网格视图 根据其他列值进行列排序

本文关键字:排序 其他 数据网 网格 视图 数据 | 更新日期: 2023-09-27 18:34:50

我正在使用DataGridView,有两列"索引"和"子索引"。当我单击"索引"列的升序排序时。我希望"子索引"列根据"索引"列数据自动排序为升序。

排序前

指数

分项指数
3 2
3 1
2 3
1 3
2 2
1 2

排序后

指数

分项指数
1 2
1 3
2 2
2 3
3 1
3 2

我不允许对"子索引"列进行排序。每当我单击排序"索引"列时,应根据"索引"列值对"子索引"列进行排序。

我的 DataGridView 未绑定到任何数据表。我通过添加行和列来手动填充 dataGridview。

感谢您的帮助。

数据网格视图 根据其他列值进行列排序

您可以在默认视图上对多列进行排序。将此代码放在列标题单击事件中。

  private void dataGridView1_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
        if (dataGridView1.Columns[e.ColumnIndex].Name == "Index")
        {
            ((DataTable)dataGridView1.DataSource).DefaultView.Sort = "Index, Subindex";
        }
    }

这确实假设您绑定到DataTable

您可以像 DataGridView 多列排序一样对此进行排序