思路,GV 动态绑定数据,(自动适应创建行与列)

来源:互联网 发布:面试java项目测试用例 编辑:程序博客网 时间:2024/03/29 07:51
关闭了自动生成列(AutoGenerateColumns="False")<asp:GridView ID="grid_info" runat="server" AutoGenerateColumns="False"  >  <Columns>   <asp:TemplateField >     <ItemTemplate >      <a><%# Eval("ID")%></a>     </ItemTemplate>   </asp:TemplateField>  </Columns></asp:GridView> 

//后台代码绑定GridView的方法 public void IntiGrid(DataTable dsGrid)    {        //由于前台有一个模板绑定了ID这个字段所以这里再次绑定前需要把除了第一列以外的列清楚        if (grid_info.Columns.Count > 1)        {             grid_info.Columns.RemoveAt(1);        }        //这里通过后台业务获取到一个数据集合        DataTable dsGrid = GerData();        //采用循环的方式绑定GridView        foreach (DataColumn dc in dsGrid.Columns)        {            //由于前台有一个模板绑定了ID这个字段所以这里需要过滤掉不绑定            if (dc.ColumnName != "ID")            {                BoundField bfCase = new BoundField();                bfCase.DataField = dc.ColumnName;                bfCase.HeaderText = dc.ColumnName;                grid_info.Columns.Add(bfCase);            }        }    } //现在出现的问题是我页面上有一个按钮触发数据绑定的这个方法,第一绑定数据到GridView没问题!//但是在点一次后就会出现第一列没有绑定数据的情况

从论坛上看到的,重在思考思路问题,我想他上面那里,从DataTable,应该还在做下字段是否为NULL的算法,否则会出错