DataGridView点击列名自动排序
因工作原因,做这个Winform程序,其实最开始想的是现在是Web的天下,还用Winform开发,我一开始内心是拒绝的,但是也没法反抗啊,那就继续折腾吧!
然后在折腾这个折腾1小时,整这个DataGridView进行点击列名排序时,设置了以下属性:
dgv.AllowUserToOrderColumns = true;
dgv.Columns[1].SortMode = DataGridViewColumnSortMode.Automatic;
发现还是不起效果呢!网上搜索各种大神的解答。有设置SortMode为Programmatic的,然后在写个ColumnHeaderMouseClick事件方法,这样虽然也能达到点击列名排序的效果,但是列名就不会有排序的小三角形了,而且我坚信SortMode为Automatic,我一定可以干出来排序,所以没采用这种方式。
最后发现是dgv的DataSource为List时,不会进行排序,我把List转为DataTable后绑定在dgv的DataSource,然后OK啦!