2008-10-17 9 views
3

J'utilise le contrôle ListView (ASP.NET 2008) pour afficher un ensemble de lignes de données et, en bas, je veux des totaux. J'allais initialement définir l'en-tête et le pied de page dans LayoutTemplate et obtenir les totaux avec une fonction locale, par exemple <% # GetTheSum()%>, mais il semble que le LayoutTemplate ne traite pas le <% # ...%> syntaxe.Affichage des totaux dans le ListView LayoutTemplate

Une autre idée serait de mettre un Label dans LayoutTemplate et d'utiliser FindControl pour le mettre à jour. Je ne sais pas si c'est possible (j'essaierai bientôt).

Quelle est la meilleure façon d'afficher les totaux à l'aide d'un ListView?

MISE À JOUR: Solution here.

Répondre

5

Il se avère que FindControl fonctionne:

CType(MyListView.FindControl("litTotal"), Literal).Text = GetTheSum() 

Je voudrais encore savoir s'il pourrait y avoir une meilleure façon cependant.

+0

dans les formulaires Web ASP.NET (non-MVC), c'est ainsi. – craigmoliver

1

Utilisez un littéral et définissez la variable dans le code-behind.

<asp:Literal ID="litTotal" runat="server" /> 

code-behind:

litTotal.Text = GetTheSum(); 
0

Vous ne pouvez pas faire référence au contrôle dans le code-behind parce qu'il est dans le LayoutTemplate. Peut-être avec FindControl, mais je n'ai pas encore essayé.

Questions connexes