Итоги в нижнем колонтитуле могут быть применены с использованием комбинации javascript, выполняемой при каждом изменении данных и загрузке формы И динамически добавляя текстовые поля или метки в нижний колонтитул через событие RowDataBound GridView. Например,
// Create textboxes in footer to hold hours totals
if (e.Row.RowType == DataControlRowType.Footer)
{
e.Row.CssClass = "wgv-ft";
for (int i = 0; i < NumHoursTextBoxes; ++i)
{
var tb = new TextBox();
tb.ID = String.Format("Hours{0}TotalTextBox", i);
tb.CssClass = "total";
tb.Enabled = false;
e.Row.Cells[FirstHoursTextBoxIndex + i].Controls.Add(tb);
}
}
Вместо использования встроенной функции редактирования (EditItemTemplates), которую предлагает GridView, вы можете просто использовать ItemTemplates и всегда отображать редактируемые текстовые поля или другие элементы управления. Я использовал эту технику. Вы все еще можете воспользоваться валидаторами и базовым набором элементов управления ASP.NET, но вам действительно нужно написать немного JavaScript для управления обновлениями итогов.
Надеюсь, это поможет. Желаем удачи.