2016-11-14 123 views
0

我有GridView动态绑定数据表。网格视图动态生成的列

我不得不在最后一列添加一个命令字段AAddOn

当试图像下面method..AAddOn在第一次显示..

我们怎样才能在最后显示的命令字段..

<asp:GridView ID="AGridView" runat="server" AutoGenerateColumns="true" style="table-layout:fixed;" Width="2000px" RowStyle-HorizontalAlign="Left"> 
      <EmptyDataTemplate> 
       &nbsp; 
      </EmptyDataTemplate> 
      <asp:CommandField ShowEditButton="True" ItemStyle-Width="80px" EditText="Edit Add On"> 
      <ItemStyle Font-Bold="true" Font-Size="Small" /> 
       <HeaderStyle CssClass="AAddOn" /> 
      </asp:CommandField> 
     </asp:GridView> 

回答

1

对于gridview,定义的列总是先呈现,然后自动生成的列呈现在其右侧。要将自动生成的列移动到左侧,您需要RowCreated事件。您可以根据需要操纵列的顺序。你可以使用下面的代码。

protected void AGridView_RowCreated(object sender, GridViewRowEventArgs e){ 
     List<TableCell> cellColumns = new List<TableCell>(); 
     foreach (DataControlField column in GridView1.Columns) 
     { 
      TableCell cell = e.Row.Cells[0]; 
      e.Row.Cells.Remove(cell); 
      cellColumns.Add(cell); 
     } 

     e.Row.Cells.AddRange(cellColumns .ToArray()); 
} 
+0

感谢您的解决方案。 – havin