我有一个 GridView ,我通过代码向其中添加列:
//Retrieve "Table" from database
gridOffers.DataSource = table;
gridOffers.DataBind();
代码添加的列是在按钮之后添加的,这不是我需要的: 我如何确保添加到购物车按钮是最后一件事?
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>
最佳答案
您正在 GridView 源中定义列,并通过将数据源数据绑定(bind)到 GridView。因此,您有两个列源;将列添加到 GridView 的顺序可能有也可能没有保证。
相反,为什么不将 GridView 的 AutoGenerateColumns 设置为 False,然后使用 BoundField 为您想要的每个字段显式指定列顺序来自 GridView 源中的数据源,然后是图像和按钮列?
关于c# - 将按钮作为 GridView 中的最后一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9942668/