> 电脑数码
datagidview行列转换(datagidview列顺序)
datagridview将列转成double并按数字排序
在给datagrid排序时,点击表头排序结果是按字符串顺序排的,结果不正确,这里大家可能都有经验,我就不详细说了,直接说我的解决方法,如下:
void Soting(string columnname){ string copycolumnname = columnname + &34;; for (int x = 0; x < dtrowcount; x++) { DataGridViewRow dr = mygv.Rows[x]; DataGridViewCell dc = dr.Cells[columnname]; DataGridViewCell dccopy = dr.Cells[copycolumnname]; string thevalue = dc.Value.ToString().Trim(); if (thevalue.Length != 0) { dccopy.Value = Convert.ToDouble(thevalue); } else { dccopy.Value = -1; } } if (sortOrder == 0) { ClientDT.DefaultView.Sort = copycolumnname + &34;; //mygv.Sort(mygv.Columns[e.ColumnIndex], ListSortDirection.Descending); sortOrder++; } else { ClientDT.DefaultView.Sort = copycolumnname + &34;; //mygv.Sort(mygv.Columns[e.ColumnIndex], ListSortDirection.Ascending); sortOrder--; } mygv.Columns[copycolumnname].HeaderCell.SortGlyphDirection = System.Windows.Forms.SortOrder.None;}
代码比较简单,稍微看下就能了解了。
温馨提示:通过以上关于datagridview将列转成double并按数字排序内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。