2010-03-06 5 views

Répondre

-3

Pour ce faire, vous devez définir ShowFooter attribut de vrai

puis dans le code derrière ajouter la valeur de votre désir dans le pied de page


<asp:GridView ID="grdList" runat="server" ShowFooter="True" > 
    // other part of gridview codes e.g columns or blah blah blah 
    </asp:GridView> 

    // in code-behind 
    int totalValue = 2 * 10; 
    grdList.Columns[2].FooterText = totalValue.ToString(); 
+0

je ne peux pas trouver cet attribut, où je peux le trouver? – Gold

+0

@Gold J'avais mis à jour mon message. Vérifiez-le. –

+0

merci beaucoup, mais je travaille sur WinForm est-il possible aussi? – Gold

2

La solution est en fait très simple, et nécessite juste de sortir des sentiers battus un peu.

Habituellement, une fois que les données sont chargées dans votre vue de la grille, il y a une ligne gris foncé au bas de celui-ci:

Vous pouvez utiliser cet espace à votre avantage. Tout ce que vous devez faire est de glisser quelques étiquettes sur votre formulaire, placé juste à l'intérieur de votre vue de la grille, avec une couleur de fond appliquée:

Dans votre code, ajoutez une méthode comme ceci:

void UpdateTotal(Label Label, int Number) 
{ 
    // Called from another thread; facilitate safe cross-thread operation 
    if(this.InvokeRequired) 
     this.Invoke(new Action<Label, int>(UpdateTotal), new object[] {Label, Number}); 

    // Called from this thread or invoked 
    else 
     // Format the number with a thousands separator 
     Label.Text = Number.ToString("N0"); 
} 

Ensuite, depuis où vous mettez à jour votre grille, appelez UpdateTotal(labelPostsAffected, 2000);, en utilisant le nom de votre étiquette, et la somme que vous avez calculée (ou calculez-la dans la méthode).

Le résultat est quelque chose comme ceci:

0

Oui, il est possible. Tout d'abord, vous devez parcourir la grille et calculer la somme des colonnes requises après avoir calculé les sommes nécessaires pour créer un nouveau DataGridRow et le remplir avec les valeurs calculées, définir la propriété Frozen de DataGridRow sur True, puis ajouter le nouveau DataGridRow à Datagridview. Sum Column Values in DataGridView

Au lieu de créer une nouvelle DataGridRow vous pouvez simplement ajouter une nouvelle ligne avec les valeurs sommées sur votre source de données, puis trouver la dernière ligne sur votre DataGrid et définissez la propriété de cette ligne Frozen = True

Questions connexes