FineUI 官方论坛

标题: FineUI Grid 为什么没有AutoGenerateColumns属性?(自动产生列) [打印本页]

作者: ☆XzyInfo☆    时间: 2014-7-24 11:43
标题: FineUI Grid 为什么没有AutoGenerateColumns属性?(自动产生列)
我想根据sql语句来查询不同表的数据,再绑定到grid,但没有找到AutoGenerateColumns属性,有没有好的办法可以解决?
作者: xxdddail    时间: 2014-7-24 11:59
可以在InitLoad中动态生成Grid的列,然后绑定数据。
作者: ☆XzyInfo☆    时间: 2014-7-24 12:23
xxdddail 发表于 2014-7-24 11:59
可以在InitLoad中动态生成Grid的列,然后绑定数据。

但是我是根据输入的SQL语句查询不同的表,查询结果表不同字段名也会不同,如果动态生成,那字段名要怎么确定?


作者: xxdddail    时间: 2014-7-25 18:09
☆XzyInfo☆ 发表于 2014-7-24 12:23
但是我是根据输入的SQL语句查询不同的表,查询结果表不同字段名也会不同,如果动态生成,那字段名要怎么 ...

方式一:从查询的DataTable中,获取列名,然后将列名作为Grid动态列的绑定字段。
方式二:字段名从数据库中获取,然后将这些字段名作为Grid动态列的绑定字段。
作者: Tiger    时间: 2014-7-25 21:16
一般表头者要处理一下,不使用列名,自动的反而不好用吧,我基本没用过自动生成
作者: 隨風往事    时间: 2014-7-28 11:31
  1. #region  取DataTable列名至表格
  2.         void AddDefColumInGrid(DataColumnCollection cols)
  3.            {

  4.                foreach (DataColumn col in cols)
  5.                {
  6.                    FineUI.BoundField bf = new FineUI.BoundField();
  7.                    MyGrid.Columns.Add(bf);               
  8.                    bf.HeaderText =col.ColumnName;
  9.                    bf.Width =100 ;
  10.                    //bf.DataToolTipField = col.ColumnName;
  11.                    //bf.DataToolTipFormatString = col.ColumnName + ":{0}";
  12.                    bf.DataField = col.ColumnName;                 
  13.                  bf.TextAlign =FineUI.TextAlign.Center ;
  14.                }
  15.         }
  16.          #endregion
复制代码


简单模式

也可以用以下语句获取列类型细分
  1. select t.name from sysobjects o,syscolumns c,systypes t where o.id=c.id and c.xtype=t.xtype and o.name='" + table + "' and c.name='" + col + "'
复制代码





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