C#中dataGridView的列顺序问题

Posted

技术标签:

【中文标题】C#中dataGridView的列顺序问题【英文标题】:Columns order issue with dataGridView in C# 【发布时间】:2012-03-20 09:32:29 【问题描述】:

我有一个使用 DataGridView 控件的 Windows 窗体。它在设计时绑定到绑定源。通过代码,我向 DataGridView 控件添加了另外 3 列。我首先检查这 3 列是否存在。如果是,我将从 DataGridView 中删除它们并将它们添加回来。

对于第一次迭代,列的顺序正确地说是 A、B、C。但是对于下一次迭代,这些新添加的列的顺序会更改为 C、B、A。

我尝试在构造函数中将 AutoGenerateColumns 设置为 false。但这对我不起作用。 数据源在设计时分配。

请帮我解决这个问题。

【问题讨论】:

能分享一下实现的代码吗??? 你为什么不简单地设置你添加的列的DisplayIndex?您应该计算有界列的数量并在它们之后添加,或者根据您的意愿插入一个位置。 是的,史蒂夫,我也做了同样的事情 :) 你能发布你的 cmets 作为答案吗? 【参考方案1】:

根据史蒂夫的评论,我找到了这个问题的替代方案。现在我正在检查列的存在。如果列已添加到网格中,我不会删除并再次添加它。这会阻止添加这些列的原始顺序。

【讨论】:

以上是关于C#中dataGridView的列顺序问题的主要内容,如果未能解决你的问题,请参考以下文章

C# 更改 DataGridView 中的列标题

如何从 c# Windows 窗体中文本框的文本内容更新 datagridview 的列

c#求怎么设置datagridview的列宽

C# 控制datagridview的combox属性的列绑定数据

在C#中,dataGridView怎么样指定显示特定的列

C# winform 中datagridview ,如何实现点击列头,对应的列自动排序。