Вот сообщение в блоге и пример кода (из одного из моих проектов), который может дать вам то, что вам нужно.
ASP.NET 2.0 - расширение элемента управления GridView для отображения дополнительных строк нижнего колонтитула
public class MyGridView : GridView
{
protected GridViewRow _footerRow = null;
public override GridViewRow FooterRow
{
get
{
if (_footerRow == null)
{
return base.FooterRow;
}
else
{
return _footerRow;
}
}
}
public MyGridView()
{
}
protected override int CreateChildControls(System.Collections.IEnumerable dataSource, bool dataBinding)
{
...
...
}
[System.ComponentModel.Category("Behavior")]
[Themeable(true)]
[System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.No)]
public bool ShowHeaderWhenEmpty
{
get
{
if (this.ViewState["ShowHeaderWhenEmpty"] == null)
{
this.ViewState["ShowHeaderWhenEmpty"] = false;
}
return (bool)this.ViewState["ShowHeaderWhenEmpty"];
}
set
{
this.ViewState["ShowHeaderWhenEmpty"] = value;
}
}
[System.ComponentModel.Category("Behavior")]
[Themeable(true)]
[System.ComponentModel.Bindable(System.ComponentModel.BindableSupport.No)]
public bool ShowFooterWhenEmpty
{
get
{
if (this.ViewState["ShowFooterWhenEmpty"] == null)
{
this.ViewState["ShowFooterWhenEmpty"] = false;
}
return (bool)this.ViewState["ShowFooterWhenEmpty"];
}
set
{
this.ViewState["ShowFooterWhenEmpty"] = value;
}
}
}