将按钮放在gridview中的最后一列

Dav*_*vid 4 c# asp.net gridview visual-studio

我有一个网格视图,我通过代码添加列:

//Retrieve "Table" from database
gridOffers.DataSource = table;
gridOffers.DataBind();
Run Code Online (Sandbox Code Playgroud)

按代码添加的列是在按钮之后添加的,这不是我需要的: 在此输入图像描述 如何确保添加到购物车按钮最后一件事?

gridView的来源:

<Columns>
             <asp:ImageField DataImageUrlField="ImageUrl" ControlStyle-Width="100"
                ControlStyle-Height = "100" HeaderText = "Preview Image"  
                 ItemStyle-HorizontalAlign="Center">
<ControlStyle Height="100px" Width="100px"></ControlStyle>

<ItemStyle HorizontalAlign="Center"></ItemStyle>
             </asp:ImageField>
             <asp:TemplateField ShowHeader="False">
                 <ItemTemplate>
                     <asp:Button ID="Button1" runat="server" CausesValidation="false" 
                         CommandName="btnAddToCart" Text="Add To Cart" />
                 </ItemTemplate>
             </asp:TemplateField>
        </Columns>
Run Code Online (Sandbox Code Playgroud)

kaj*_*kaj 5

您正在通过将数据源数据绑定到GridView来定义GridView源中的列.因此,您有两个列来源; 可能有也可能没有保证的顺序,其中列被添加到GridView.

相反,为什么不将GridView的AutoGenerateColumns设置为False,然后使用BoundField为GridView源中的数据源所需的每个字段显示指定列顺序,然后是图像和按钮列?