防止只读列重新排序

时间:2011-07-21 19:02:29

标签: c# winforms datagridview

我有一个DataGridView,其中包含三个只读列和一个或多个其他可写列。用户已决定他们需要能够重新排序列。我需要一种方法来让他们重新排序可写列但不是只读列。我唯一想到的是检查刚刚在ColumnDisplayIndexChanged事件中移动的列是否为只读,检查它的名称,然后将其移回我想要的位置。我不喜欢那个解决方案。有没有人对这个问题有更优雅的解决方案?

2 个答案:

答案 0 :(得分:3)

  

如果启用了列重新排序,则冻结列将被视为与未冻结列不同的组。用户可以重新定位任一组中的列,但不能将列从一个组移动到另一个组。

这听起来像你想要的吗?

http://msdn.microsoft.com/en-us/library/28e9w2e1.aspx

答案 1 :(得分:0)

默认情况下,您可以禁用列重新排序,只有在鼠标光标位于要移动的列上时才启用它。

不是我真的试过这个,但值得一试。