这是关于datagridview排序问题,单击第一列表头没有任何变化,不知道是什么原因?请教高手,相关代码如下:
private void MeterList_dgv_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            this.MeterList_dgv.VirtualMode = false;
            this.MeterList_dgv.Columns[e.ColumnIndex].SortMode = DataGridViewColumnSortMode.Automatic;
            //this.MeterList_dgv.SelectionMode = DataGridViewSelectionMode.ColumnHeaderSelect;
            DataGridViewColumn newColumn = this.MeterList_dgv.Columns[e.ColumnIndex];
            DataGridViewColumn oldColumn = this.MeterList_dgv.SortedColumn;
            ListSortDirection direction;
            if (oldColumn != null)
            {
                if (oldColumn == newColumn && this.MeterList_dgv.SortOrder == SortOrder.Ascending)
                {
                    direction = ListSortDirection.Descending;
                }
                else
                {
                    direction = ListSortDirection.Ascending;
                    oldColumn.HeaderCell.SortGlyphDirection = SortOrder.None;
                }
            }
            else
            {
                direction = ListSortDirection.Ascending;
            }
            this.MeterList_dgv.Sort(newColumn, direction);
            newColumn.HeaderCell.SortGlyphDirection = direction == ListSortDirection.Ascending ? SortOrder.Ascending : SortOrder.Descending;
            this.MeterList_dgv.VirtualMode = true;
        }