搜索
写经验 领红包

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并按数字排序内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。