?我遇到如下情况,DataGridView加载数据后,用户点击了列标题排序,这时如果用户想增加一个新行或者修改了排序列中的某个值,DataGridView会自动排序,影响用户编辑,编辑行的位置变来变去,很不友好。那么,能不能暂停DataGridView的排序功能呢?网上搜索了很多资料,并没有直接的方法解决。DataGridView一旦设置了排序就没有直接的方法去停止排序了。即使把所有列的SortMode重新设置成NotSortable也是不行的。以下提供变通方法:方案一:。一、为datatable增加一个int类型的列,名字为FInnerSort,此列不与数据库中的列关联,,如:("FInnerSort",GetType())也可以直接在SQL语句中加,selectColA,ColB,0asFInnerSortFROM…如果是使用VS的DataSet编辑器,可以手工增加一个列,source空白(这样就不与数据库关联)设置如图:二、设计好DataGridView中列与datatable中的列一一对应。其中与FInnerSort对应的列要隐藏起来,这个列用于排序三、=fillData()‘=False'==='设置列只能通过编码方式排序EndIfNext四、:点击标题后,先用被点击的列排序,排好后,重新设置FInnerSort列的值,并用FInnerSort这个列排序。代码如下:PrivateSubdgItems_ColumnHeaderMouseClick(senderAsObject,)=>=().SortMode='先用使用被点击的列排序,并设置列标题的排序图标DimcolAsDataGridViewColumn=
让datagridview停止排序 来自淘豆网m.daumloan.com转载请标明出处.