网格视图页脚未显示

时间:2018-10-03 22:26:03

标签: c# asp.net gridview footer

我正在从arraylist建立一个gridview,并希望在底部包含页脚。

这是我的C#代码

gvOrder.DataSource = orderItemList; 
gvOrder.DataBind(); 
gvOrder.ShowFooter = true; 
gvOrder.Columns[0].FooterText = "Totals:"; 
gvOrder.Columns[2].FooterText = Convert.ToString(quantity); 
gvOrder.Columns[4].FooterText = Convert.ToString(priceTotal);

这是我的asp代码

<asp:GridView ID="gvOrder" runat="server" AutoGenerateColumns="False" ShowFooter="True">
    <Columns>
        <asp:BoundField DataField="ItemTitle" HeaderText="Title" />
        <asp:BoundField DataField="ItemFormat" HeaderText="Format" />
        <asp:BoundField DataField="ItemQuantity" HeaderText="Quantity" /> 
        <asp:BoundField DataField="ItemPrice" HeaderText="Price" />
        <asp:BoundField DataField="ItemTotal" HeaderText="Total" />
    </Columns>
</asp:GridView>

1 个答案:

答案 0 :(得分:1)

事情的顺序很重要。您必须在调用DataBind()之前设置页脚值。

gvOrder.Columns[0].FooterText = "Totals:"; 
gvOrder.Columns[2].FooterText = Convert.ToString(quantity); 
gvOrder.Columns[4].FooterText = Convert.ToString(priceTotal);

gvOrder.DataSource = orderItemList; 
gvOrder.DataBind();
gvOrder.ShowFooter = true; 

但是,如果您指定页脚单元格而不是列,则可以在DataBind之后设置页脚行的值。

gvOrder.FooterRow.Cells[1].Text = "After DataBind";