【发布时间】:2010-12-02 00:43:56
【问题描述】:
我有 2 列的 DataGridView。首先的 SortMode 设置为 Automatic。
在这个网格中有很多行,当我改变行中的值时,例如从 xyz 到 abc,我仍然在该行所在的位置。编辑的行跳转到顶部。
我想中止这种自动排序,我想通过左键单击列来调用排序。是
我找到了一些解决方案(下面的代码 + 我将 SortMode 设置为 Programmatically),但我的行仍在跳跃:/ 有没有人解决这个问题?
private void dataGridView1_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
DataGridViewColumn newColumn =
dataGridView1.Columns[e.ColumnIndex];
SortOrder direction;
if (dataGridView1.SortOrder == SortOrder.Ascending)
{
dataGridView1.Sort(newColumn,
ListSortDirection.Ascending);
direction = SortOrder.Ascending;
}
else
{
dataGridView1.Sort(newColumn,
ListSortDirection.Descending);
direction = SortOrder.Descending;
}
newColumn.HeaderCell.SortGlyphDirection = direction;
}
}
【问题讨论】:
标签: c# asp.net datagridview .net-2.0