public class Club
{ public List public Club() { } public int NombreMembre { get { return lstS.Count; } } public int IndiceDe(Stagiaire membre) { int pos=-1; for (int i = 0; i < lstS.Count; i++) { if (membre.Nom == lstS[i].Nom) { return i; } } return pos; } public bool Ajouter(Stagiaire membre) { for (int i=0;i<lstS.Count;i++) { if (IndiceDe(membre) ==-1) { lstS.Add(membre); return true; } } return false; } public void Supprimer(string numérolnscription) { for (int i = 0; i < lstS.Count; i++) { if (lstS[i].Numero== numérolnscription) { lstS.RemoveAt(i); } else { throw new Exception("le numero introvable "); } } } BinaryFormatter bf = new BinaryFormatter(); public void Enregistrer() { StreamWriter sw = new StreamWriter("D:/testTDi/Club de lecture.bin"); bf.Serialize(sw.BaseStream, lstS); sw.Close(); } public void Charger() { if (File.Exists("D:/testTDi/Club de lecture.bin") == false) { throw new Exception("Attention Fichier introvable !!"); } else { StreamReader sr = new StreamReader("D:/testTDi/Club de lecture.bin"); lstS = bf.Deserialize(sr.BaseStream) as List sr.Close(); } } public override string ToString() { string str="Club de lecture :\n-Membre("+NombreMembre+"):"; for (int i=0;i<lstS.Count;i++) { str += "\t" + lstS[i]; } return str; } } [Serializable] public class Stagiaire { private string nom; public string Nom { get { return nom; } set { nom = value; } } private string numero; public string Numero { get { return numero; } set { if (value.Length<12) { throw new Exception("Attention le numero doit etre<12"); } numero = value; } } public Stagiaire() { } public Stagiaire(string nu, string no) { Nom = no; Numero = nu; } public bool Equals(Stagiaire s,Stagiaire s1) { bool res=false; if(s.numero==s1.numero) { res = true; } return res; } public override string ToString() { return "Stagiaire" + Numero.ToString() + ":" + Nom; } } public partial class Form1 : Form { Club c = new Club(); public Form1() { InitializeComponent(); } private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { dataGridViewMem.DataSource = null; dataGridViewMem.DataSource = c.lstS; } catch (Exception ex) { MessageBox.Show(ex.Message); } } DataTable d = new DataTable(); private void Form1_Load(object sender, EventArgs e) { MessageBox.Show("Demarage de l'application ", "Demarer", MessageBoxButtons.OK); dataGridViewMem.DataSource = null; d.Columns.Add("Numero Inscription ", typeof(string)); d.Columns.Add("Nom Complet ", typeof(string)); dataGridViewMem.DataSource = d; c.Ajouter(new Stagiaire("1996 11 05 0035", "Hassan SOUFIANI")); c.Ajouter(new Stagiaire("1995 09 15 0002", "imane BARKAOUI")); c.Ajouter(new Stagiaire("1996 01 05 0112", "aissam EL KHIATI")); c.Ajouter(new Stagiaire("1998 02 13 0190", "Badr MOUBTASSIM")); c.Enregistrer(); foreach(Stagiaire s in c.lstS) { d.Rows.Add(s.Numero, s.Nom); } } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { DialogResult d = MessageBox.Show("Close ther Form ?", "Close", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (d==DialogResult.Cancel) { e.Cancel = true; } } private void buttonFermer_Click(object sender, EventArgs e) { Application.Exit(); } private void Form1_FormClosed(object sender, FormClosedEventArgs e) { MessageBox.Show("L'application fermer", "Fermer", MessageBoxButtons.OK); } } |