2017-07-20 9 views
1

私が見てきたすべてのものは、完全な行のコントロールフッターではなく、列フッターを追加します。私は、グリッドでフッターを単一のものとしてレンダリングするようにします。Gridviewフッターを単一のセルとして追加する方法はありますか?

行をブラウザに表示します。私はページャの行を悪用することを検討しましたが、それはあまりカスタマイズできません。

+0

(またはしかし多くの列のテーブルが含まれていますか)?私は何かを誤解していますか? – Aaron

答えて

3

これは、RowDataBoundイベントで簡単に実行できます。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    //check if the row is a footer row 
    if (e.Row.RowType == DataControlRowType.Footer) 
    { 
     //span the first cell with the number of columns 
     e.Row.Cells[0].ColumnSpan = e.Row.Cells.Count; 

     //hide all other columns 
     for (int i = 1; i < e.Row.Cells.Count; i++) 
     { 
      e.Row.Cells[i].Visible = false; 
     } 
    } 
} 

最初のTemplateFieldを使用してコントロールを保持することができます。

<asp:TemplateField> 
    <ItemTemplate> 
     <%# Eval("myColumn") %> 
    </ItemTemplate> 
    <FooterTemplate> 
     <asp:Label ID="Label1" runat="server" Text="Footer"></asp:Label> 
    </FooterTemplate> 
</asp:TemplateField> 
+0

Hmmm、私のソリューションよりもうまくいくかもしれません。また、ボタンをコードで追加しましたが、RowCommandイベントは発生しません。 – user1431356

関連する問題