Я использую элемент управления ListView (ASP.NET 2008), чтобы показать несколько строк данных, а внизу мне нужны итоги. Изначально я собирался определить верхний и нижний колонтитулы в LayoutTemplate и получить итоги с помощью некоторой локальной функции, например <% # GetTheSum ()%>, но оказалось, что LayoutTemplate не обрабатывает <% # ...%> синтаксис.
Еще одна мысль - поместить метку в LayoutTemplate и использовать FindControl для ее обновления. Не уверен, возможно ли это (скоро попробую).
Как лучше всего отображать итоги с помощью ListView?
ОБНОВЛЕНИЕ: Решение здесь.





Используйте литерал и установите переменную в коде программной части.
<asp:Literal ID = "litTotal" runat = "server" />
код программной части:
litTotal.Text = GetTheSum();
Вы не можете ссылаться на элемент управления в коде программной части, потому что он находится в LayoutTemplate. Может быть, с FindControl, но я этого еще не пробовал.
Оказывается, FindControl действительно работает:
CType(MyListView.FindControl("litTotal"), Literal).Text = GetTheSum()
Я все еще хотел бы знать, есть ли способ получше.
в веб-формах ASP.NET (не MVC), вот так.