怪事,datagridview中的列显示顺序,与设计时的顺序不同?

xuexi_net1 2010-09-21 04:26:29
怪事,datagridview中的列显示顺序,与设计时的顺序不同?
---------------------------------
在设计界面上,编辑列,添加了所有列,并为每个列指定了对应数据表中的字段名,
然后运行时,用代码绑定

//按部门显示
private void showbybumen(string yf,string bm)
{
objgjj.GetGjjRecord(yf,bm,out mytable);
this.dataGrid1.DataSource = mytable;
lbljlts.Text = "记录条数:" + mytable.Rows.Count.ToString();

}

其中,mytable 是一个 datatable 对象。
这样操作是对的,所有列都能取到,但是datagridview中列的顺序与设计时不一样。真是怪了。
我找不到原因在哪里,从第7列就开始不一样了。
...全文
1165 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_38938062 2021-07-20
  • 打赏
  • 举报
回复

尝试在页面的load方法里加一个这个属性的设置:
dataGridView8.AutoGenerateColumns = false;

killerkg007 2021-07-03
  • 打赏
  • 举报
回复

dgv.DataSource = ds.Tables[0].DefaultView;
ds里的字段与dgv里的字段不一致导致的

Pcct000 2012-06-14
  • 打赏
  • 举报
回复
我跟LZ遇到的情况一样,但不知道我的方法你用得能不能解决,我是这样解决的:
所有 DataTable 里 输出的字段都 要在 datagridview 设计里有对应的字段,包括 要隐藏的id列,默认列Visible 设置为False ,顺序就正确了,可以试下~
yqygreat 2012-04-19
  • 打赏
  • 举报
回复 1
datagridview1=null;//先置空
datagridview1.datasource=dt; //再重新绑定
Kin5744183 2010-09-21
  • 打赏
  • 举报
回复
由于DATAGRIDVIEW内置自动排列数据列,你可以通过datagridview.autocolumns...,这个属性以auto什么columns的,完整属性名称我就想不起来,你可以试下,这样就会根据你设计时列顺序排列了
likedefly 2010-09-21
  • 打赏
  • 举报
回复
是先绑定DatagridView,还是先设置字段?这会对字段显示顺序产生影响
让爱延续 2010-09-21
  • 打赏
  • 举报
回复
我遇到过这种情况 在server 2000操作系统下、显示的列的顺序与设计器中的顺序不一致。

在DGV中 还有个 dispalyindex 属性呢,加个监视 、观察一下。
xuexi_net1 2010-09-21
  • 打赏
  • 举报
回复
我想问,datatable 的字段 与 datagridview的列,必须要一一对应呢?
数量一样多,顺序一模一样。
xuexi_net1 2010-09-21
  • 打赏
  • 举报
回复
是这样,
以下是例子

我的select 语句是这样的
select autoid,编号,姓名,公积金,备注 from 公积金表

即有 5 个字段,但是我不想显示出 autoid 列,所以我的 datagridview,我添加了4列,分别是

编号,姓名,公积金,备注

这样显示后,顺序就出错了。

我添加了一列 autoid,把这一列放在最左边, 就正常了。
可是我不想让 datagridview 中有 autoid 这一列呀。这一列不用显示,是保证惟一性用的,与显示无关,所以我不想显示在datagridview中
li12403074 2010-09-21
  • 打赏
  • 举报
回复
绝对是哪里错了,不是列名绑定弄错了,就是查询的时候有2列字段用一样的了!

Z 自己没搞清楚, 也说不清楚 ,我们只能猜了1
kj289907795 2010-09-21
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 kj289907795 的回复:]
LZ 自己没搞清楚, 也说清楚的
[/Quote]
LZ 自己没搞清楚, 也说不清楚
kj289907795 2010-09-21
  • 打赏
  • 举报
回复
LZ 自己没搞清楚, 也说清楚的
likedefly 2010-09-21
  • 打赏
  • 举报
回复
用的是VS自带的控件还是第三方的?
shuai13869896140 2010-09-21
  • 打赏
  • 举报
回复
应该是看存储过程中的顺序是否和你需要的一样 而不是去看dt or dv的顺序```
就是你select [] [] [] [] [] [] [] 各个的参数 是否正确
fafasun 2010-09-21
  • 打赏
  • 举报
回复
datagridview有个不自动生成列的属性,有没有设FALSE
xuexi_net1 2010-09-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 jsnjlhb 的回复:]

是不是你mytable中字段名跟datagridview中的列名绑错了啊
[/Quote]
为了清楚 ,再说一次吧,
列名绝对没有绑错,但是 datagridview 中的列名,确实比 datatable 中的字段少,因为有些字段,我不想显示出来,所以没有添加这些列到 datagridview 中。
ajq1989 2010-09-21
  • 打赏
  • 举报
回复
按DataTable 的顺序吧
xuexi_net1 2010-09-21
  • 打赏
  • 举报
回复
但是有些列,datatable中需要,但是不想显示到 datagridview 中,所以存在顺序不一样的情况,

其实顺序对,就是 datagridview中的列,比 datatable 中的字段少,这样不行吗?

有些列不需要,也不能显示在datagridview中呀,比如 自增列,比如一些隐藏的标志。
kj289907795 2010-09-21
  • 打赏
  • 举报
回复
你绑定中文字段名 也要按照这个顺序
kj289907795 2010-09-21
  • 打赏
  • 举报
回复
select 出的 绑到 datatable ,datatable 的顺序就是 datagridview 的顺序

加载更多回复(3)
内容概要:本文围绕不确定环境下的多式联运路径优化问题展开研究,提出并实现了基于AFO算法、遗传算法(GA)和粒子群优化算法(PSO)的三种智能优化方法,并借助Matlab平台完成算法编程与仿真。研究构建了考虑间、成本、转运风险等多重不确定因素的路径优化模型,系统比较了AFO、GA、PSO三种算法在收敛速度、全局寻优能力和稳定性方面的表现,同引入Matlab自带的全局优化搜索器作为基准对照,深入分析各算法在复杂物流网络的适用边界与性能差异。研究表明,AFO算法在解决此类组合优化问题展现出更快的收敛效率和更强的局部规避能力。; 适合人群:具备一定Matlab编程基础与运筹优化知识,从事物流工程、交通运输规划、智能算法开发等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于多式联运、综合货运网络的路径决策支持系统构建;②为不确定性条件下复杂路径规划问题提供智能算法选型依据与技术实现方案;③支持科研人员复现主流优化算法并开展横向性能对比实验,推动算法改进与实际落地。; 阅读建议:建议读者结合提供的Matlab代码逐模块分析算法实现流程,重点理解目标函数设计、约束条件处理及参数敏感性分析部分,可通过调整问题规模与算法参数进行对比实验,进一步拓展至动态路径规划或大规模网络优化等延伸场景。
内容概要:本文研究了基于QLearning自适应强化学习的PID控制器在自主水下航行器(AUV)运动控制的应用,通过Matlab代码实现了控制算法的仿真验证。该方法融合强化学习的在线自适应能力与传统PID控制的稳定性优势,利用QLearning算法动态优化PID控制器的比例、积分、微分参数,以应对水下复杂流体环境、模型不确定性及外部干扰等挑战,从而提升AUV轨迹跟踪的精度、鲁棒性与动态响应性能。文系统阐述了AUV的六自由度非线性动力学建模过程、QLearning算法的状态空间与动作空间设计、奖励函数构造及训练机制,并详细说明了PID参数自整定的闭环控制架构。仿真结果表明,相较于传统固定参数PID控制器,该智能控制策略在多种工况下均展现出更优的控制效果,有效抑制了超调,加快了响应速度,并增强了抗干扰能力。; 适合人群:具备自动控制理论、强化学习基础及Matlab/Simulink仿真能力,从事水下机器人、智能控制、海洋工程、自动化等领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于AUV、UUV等无人水下平台的高精度自主导航与运动控制;②为解决非线性、强耦合、变系统的控制器参数自适应整定问题提供智能化解决方案;③作为强化学习与经典控制理论深度融合的技术范例,推动智能控制算法在海洋装备的工程化应用。; 阅读建议:建议读者结合提供的Matlab代码深入理解算法实现细节,重点剖析QLearning的状态-动作-奖励机制设计、PID参数更新逻辑及仿真对比实验结果,有条件者可在更复杂的动力学模型或实际硬件平台上进一步验证与优化算法性能。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧