FineUI 官方论坛

标题: 【求教】Grid动态创建列时绑定数据的问题 [打印本页]

作者: Panda    时间: 2013-11-5 13:30
标题: 【求教】Grid动态创建列时绑定数据的问题
GRID绑定时列数是固定的,不同条件下,列数有可能是2列也有可能是3列,现在我已经解决了加载列数的问题。

但是虽然现在已经实现了显示两列是就加载两列,显示三列时就加载三列。

但是数据绑定会有问题。比如第一次加载两列数据,数据绑定正常。

再改变条件,表格更新成三列,数据集按照正常的绑定方式绑定,但是绑定后显示的数据还是第一次那两列的数据,第三列数据是空的。

Grid Grid1 = new Grid();
Grid1.ID = "Grid1";
Grid1.ShowBorder = false;
Grid1.ShowHeader = false;
Grid1.PageSize = 100;
Grid1.EnableRowNumber = true;

FineUI.BoundField BF;
BF = new FineUI.BoundField();
BF.DataField = "Field2";
BF.HeaderText = "列一";
Grid1.Columns.Add(BF);

BF = new FineUI.BoundField();
BF.DataField = "Field2";
BF.HeaderText = "列二";
Grid1.Columns.Add(BF);

Grid1.DataSource = dt1;
Grid1.DataBind();
                        
Panel1.Items.Add(Grid1);

作者: Panda    时间: 2013-11-5 13:32
类似一楼的代码,第一次加载【列一】、并且填充【列一】的数据是正常的,但是再查询的时候重新绑定表格,填充数据后,只显示第一次【列一】的数据,【列二】是空的
作者: 刘军    时间: 2013-11-8 15:15
我这里就根本没列二
作者: 刘军    时间: 2013-11-8 15:17
最后禁用ajax才行
作者: 丨Sky丨夜吻    时间: 2013-11-8 15:40
动态Grid数据列要写在page_init中   写在page_load是不行的
作者: Panda    时间: 2013-11-8 19:05
丨Sky丨夜吻 发表于 2013-11-8 15:40
动态Grid数据列要写在page_init中   写在page_load是不行的

功能已经实现,最近有点忙,有时间再把实现写出来分享。总的来说就是禁用ENABLEAJAX属性,绑定事件协助PAGE_LOAD里(但是不能写在ISPOSTBACK里面)。
作者: Panda    时间: 2013-11-8 19:05
刘军 发表于 2013-11-8 15:17
最后禁用ajax才行

是啊,设置ENABLEAJAX=FALSE就可以了。
作者: flyboywfy    时间: 2015-3-26 13:36
解决后的代码是啥啊 能参考下吗?我这边查询的时候 ”列标题“无法动态更新
作者: flyboywfy    时间: 2015-3-26 16:39
请问你是如何解决加载列数的问题的啊
作者: ladysman1219    时间: 2017-5-23 00:06
求问在哪里enableAjax=false的?或者怎么实现的动态创建列(用button事件动态生成创建grid)




欢迎光临 FineUI 官方论坛 (https://www.fineui.com/BBS/) Powered by Discuz! X3.4