for (int i = 0; i < this.dataGridView1.Columns.Count; i++)
this.dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
首先是获取总共有多少列,然后通过循环将每一列的SortMode设置成不自动排序就可以了。这里总共有三个属性可供选择,一种就是默认的自动排序,一种是不排序,在就是通过程序控制排序,可以根据需要进行设置。
C# DataGridView控件关闭列自动排序功能当DataGridView绑定DataTable时,点击DataGridView表头的时候,DataGridView会自动排序(注意string按字符串排序的,不是按数值大小),但是对于绑定的DataTable并不会随着DataGridView的行顺序改变数据的顺序。在DataGridView控件里面的属性关闭列自动排序是需要到对应列里面去设...
//禁止每一列点击标题排序for(inti=0;i<dataGridView1.Columns.Count;i++){dataGridView1.Columns[i].SortMode=DataGridViewColumnSortMode.NotSortable;}
for (int i = 0; i < this.dataGridView1.Columns.Count; i++)
this.dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
原文地址:http://www.cnblogs.com/wh
for (int i = 0; i < dataGridView.Columns.Count; i++)
dataGridView.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable; //禁止列排序
dataGridView.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
for (int i = 0; i < this.dataGridView1.Columns.Count; i++)
this.dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
dataGridView1.Columns[0].SortMode = DataGridViewColumnSortMode.NotSortable;
如果有多个列的话,可以在数据绑定完成之后执行这段代码:
for (int i = 0; i < this.dataGridView1.Co...
之前做记账程序时用了DataGridView来呈现数据,为了提升用户体验,在显示数据时我还在最后一行加了一个统计行。又因为DataGridView是可以点击标题行来排序的,当用户点击排序时最后的统计行也会跟着排序,变到其他行去了,这样很不爽。
于是就要想一个办法让最后一行不参与排序,DataGridView本身没有这样的方法,得自己实现。搜索之后得到一个思路:在排序前先保存最后一行,
for (int i = 0; i < DgvExcel.Columns.Count; i++)
DgvExcel.Columns[i].SortMode =
DataGridViewColumnSortMode.NotSortable;
//禁止每一列点击标题排序for(inti=0;i<dataGridView1.Columns.Count;i++)
dataGridView1.Columns[i].SortMode=DataGridViewColumnSortMode.NotSortable;