Soient les 2 classes suivantes
using System;
using System.Collections.Generic;
using System.Linq;
namespace test
{
class ExempleTermitus
{
public List<LesDonnees> Donnees { get; set; }
public int SommeElement3
{
get { return Donnees.Sum(x => x.Element3); }
}
public int SommeDeJanvier
{
get { return Donnees.Where(x => x.Element2.Month == 1).Sum(x => x.Element3); }
}
public int SommeDeS18DernierMois
{
get { return Donnees.Where(x => x.Element2 <= DateTime.Now && x.Element2 > DateTime.Now.Date.AddMonths(-18)).Sum(x => x.Element3); }
}
public int SommeTexte2
{
get { return Donnees.Where(x => x.Element1 == "Texte1" ).Sum(x => x.Element3); }
}
}
class LesDonnees
{
public string Element1 { get; set; }
public DateTime Element2 { get; set; }
public int Element3 { get; set; }
}
}
dans ton formulaire
//Création de la source de données
ExempleTermitus exemple = new ExempleTermitus();
exemple.Donnees = new List<LesDonnees>
{
new LesDonnees{ Element1 = "Texte1", Element2 = new DateTime(2018,07,07), Element3 = 123},
new LesDonnees{ Element1 = "Texte2", Element2 = new DateTime(2017,07,07), Element3 = 234},
new LesDonnees{ Element1 = "Texte3", Element2 = new DateTime(2017,01,01), Element3 = 345},
new LesDonnees{ Element1 = "Texte1", Element2 = new DateTime(2019,01,01), Element3 = 456},
new LesDonnees{ Element1 = "Texte2", Element2 = new DateTime(2019,07,07), Element3 = 567},
new LesDonnees{ Element1 = "Texte3", Element2 = new DateTime(2018,01,01), Element3 = 789},
};
//utilisation de la source de données
dataGridView1.DataSource = exemple.Donnees;
textBox1.Text = exemple.SommeElement3.ToString();
textBox2.Text = exemple.SommeDeJanvier.ToString();
textBox3.Text = exemple.SommeDeS18DernierMois.ToString();
textBox4.Text = exemple.SommeTexte2.ToString();
Voilà un petit tuto sur le binding
https://codes-sources.commentcamarche.net/faq/1291-utilisation-du-binding-au-travers-de-l-objet-databindingsource
Et là un tuto moins petit sur la programmation objet en C#
https://codes-sources.commentcamarche.net/faq/11239-la-programmation-objet-appliquee-a-net-par-l-exemple-partie-1-sur-3
7 juil. 2018 à 16:33
je veux faire la somme des cellules qui se trouve dans la colonne des elm3