private void buttonDesinscrireAdherentActivite_Click(object sender, EventArgs e) { /// Récupération de la ligne courante Activité et des valeurs de ses colonnes dans une variable currentRow cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Récupération de la ligne courante des inscriptions de l'activité et des valeurs de ses colonnes dans une variable currentRow2 cda27_bd2DataSet.adherentinscriptionRow currentRow2 = (cda27_bd2DataSet.adherentinscriptionRow)((DataRowView)adherentinscriptionBindingSource.Current).Row; /// Je stock l'IdActivite de la la ligne courante de l'activité pour l'utilisation future int IdActivite = currentRow.IdActivite; /// J'affiche un message de confirmation de suppression DialogResult DiagResult = MessageBox.Show(String.Format(Properties.Resources.STR_MESSAGE_CONFIRMATION_SUPPRESSION, currentRow2.Prénom), String.Format(Properties.Resources.STR_TITRE_CONFIRMATION_SUPPRESSION, currentRow2.Prénom, currentRow2.Nom), MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2); /// Si l'utilisateur clique sur Oui if (DiagResult == DialogResult.Yes) { /// Je procède à la suppression de l'inscription avec les valeurs de currentRow2 int nb = inscriptionTableAdapter1.Delete(currentRow2.IdInscription, currentRow2.DInscription, currentRow2.NbInvités, currentRow2.IdAdherent, currentRow2.IdActivite); /// Si la suppression a échouée if (nb == 0) { /// J'affiche un message correspondant MessageBox.Show(Properties.Resources.STR_MESSAGE_DESINSCRIPTION_ERREUR, Properties.Resources.STR_TITRE_DESINSCRIPTION_ERREUR, MessageBoxButtons.OK, MessageBoxIcon.Information); } } /// Je FillIntegral FillIntegral(); /// Je me repositionne sur l'activité précédemment séléctionnée activitesBindingSourceListeAct.Position = activitesBindingSourceListeAct.Find("IdActivite", IdActivite); }
/// <summary> /// Si la séléction de la liste des activités a changé /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void activitesBindingSourceListeAct_CurrentChanged_1(object sender, EventArgs e) { /// Et si la séléction est différente de null if (activitesBindingSourceListeAct.Current != null) { /// Je récupère la ligne de l'activité cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Je Fill les inscriptions avec comme argument l'IdActivite pour ne séléctionner que les adhérents inscrits à cette activité this.adherentinscriptionTableAdapter.FillBy(this.cda27_bd2DataSet1.adherentinscription, currentRow.IdActivite); /// Je Fill les inscriptions avec comme argument l'IdActivite pour ne séléctionner que les adhérents non-inscrits à cette activité this.adherents2TableAdapter.FillBy(this.cda27_bd2DataSet1.adherents2, currentRow.IdActivite); } }
/// <summary> /// Action du bouton Modifier dans l'onglet Activité (Modifier une activité) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonModifierActivite_Click(object sender, EventArgs e) { /// Using de la formDetailActivite (nouvelle fenêtre) pour faire un "dispose" à la fermeture using (formDetailActivite frmDetailActivite = new formDetailActivite()) { /// J'envoie à la fenêtre fille le binding de l'activité frmDetailActivite.adherentbind = activitesBindingSourceListeAct; /// Récupération de la ligne courrante pour une utilisation des valeurs de ses colonnes cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; frmDetailActivite.currentRowAdh = currentRow; /// J'envoie l'IdActivite et l'IdType à la fenêtre fille frmDetailActivite.IdActivite = currentRow.IdActivite; frmDetailActivite.IdType = currentRow.IdType; /// Je rends invisible le bouton ajouter frmDetailActivite.buttonAjouterActivite.Visible = false; /// Mise des valeurs dans les TextBox et dateTimePicker correspondant à l'adhérent /// int publier; if (currentRow.Publié == 1) { frmDetailActivite.checkBoxPublic.Checked = true; } else { frmDetailActivite.checkBoxPublic.Checked = false; } frmDetailActivite.textBoxTarifInvite.Text = currentRow.Tarif_invité; frmDetailActivite.textBoxTarifAdherent.Text = currentRow.Tarif_adhérent; frmDetailActivite.textBoxIntituleAct.Text = currentRow.Intitulé; frmDetailActivite.dateTimePickerDateDebut.Value = currentRow.Date_de_début; frmDetailActivite.dateTimePickerDateFin.Value = currentRow.Date_de_fin; frmDetailActivite.dateTimePickerDateLimite.Value = currentRow._Date_limite_d_inscription; frmDetailActivite.textBoxDescription.Text = Convert.ToString(currentRow.Description); /// J'indique à la fenêtre fille qu'une modification est en cours frmDetailActivite.ModifEnCours = true; /// J'affiche la fenêtre en mode Dialog frmDetailActivite.ShowDialog(); /// Si la fenêtre se ferme if (frmDetailActivite.IsClose) { /// Je FillIntegral FillIntegral(); /// Je me repositionne sur l'activité qui vient d'être modifiée précédemment activitesBindingSourceListeAct.Position = activitesBindingSourceListeAct.Find("IdActivite", frmDetailActivite.LastInsert); /// IsClose et ModifEnCours deviennent 0 frmDetailActivite.IsClose = false; frmDetailActivite.ModifEnCours = false; } } }
private void buttonModifierInscriptionActivite_Click(object sender, EventArgs e) { /// Récupération de la ligne courante Activité et des valeurs de ses colonnes dans une variable currentRow cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Je stock l'IdActivite de la la ligne courante de l'activité pour l'utilisation future int IdActivite = currentRow.IdActivite; /// Récupération de la ligne courante des inscriptions de l'activité et des valeurs de ses colonnes dans une variable currentRow2 cda27_bd2DataSet.adherentinscriptionRow currentRow2 = (cda27_bd2DataSet.adherentinscriptionRow)((DataRowView)adherentinscriptionBindingSource.Current).Row; using (FormInscriptionActivite frmInscriptionActivite = new FormInscriptionActivite()) { /// Envoie des valeurs des currentRow et currentRow2 dans des variables directement à la fenêtre fille frmInscriptionActivite.IdActivite = currentRow.IdActivite; frmInscriptionActivite.IdAdherent = currentRow2.IdAdherent; frmInscriptionActivite.textBoxIntituleAct.Text = currentRow.Intitulé; frmInscriptionActivite.textBoxDescription.Text = currentRow.Description; frmInscriptionActivite.textBoxTarifAdherent.Text = currentRow.Tarif_adhérent; frmInscriptionActivite.textBoxTarifInvite.Text = currentRow.Tarif_invité; frmInscriptionActivite.dateTimePickerDateDebutAct.Value = currentRow.Date_de_début; frmInscriptionActivite.dateTimePickerDateFinAct.Value = currentRow.Date_de_fin; frmInscriptionActivite.dateTimePickerDateLimiteAct.Value = currentRow._Date_limite_d_inscription; frmInscriptionActivite.textBoxLogin.Text = currentRow2.Login; frmInscriptionActivite.textBoxNom.Text = currentRow2.Nom; frmInscriptionActivite.textBoxPrenom.Text = currentRow2.Prénom; frmInscriptionActivite.textBoxCylindrée.Text = currentRow2.Cylindrée; /// Initialisation du textBox du nombre d'invité à la valeur de l'inscription de l'adhérent frmInscriptionActivite.textBoxNombreInvite.Text = Convert.ToString(currentRow2.NbInvités); /// Je nomme le bouton frmInscriptionActivite.buttonInscrireAdherentActivite.Text = "Modifier l'inscription de l'adhérent"; /// Je dis qu'une modification est en cours pour la fenêtre fille frmInscriptionActivite.ModificationEnCours = true; /// J'envoie le bindingSource à la fenêtre fille frmInscriptionActivite.inscriptionAct = adherentinscriptionBindingSource; /// Affichage de la fenêtre en mode Dialog frmInscriptionActivite.ShowDialog(); /// Si l'inscription se termine if (frmInscriptionActivite.InscriptionFinie == 1) { /// Je FillIntegral FillIntegral(); /// Je me repositionne sur l'activité précédemment séléctionnée activitesBindingSourceListeAct.Position = activitesBindingSourceListeAct.Find("IdActivite", IdActivite); /// InscriptionFinie est à présent à 0 frmInscriptionActivite.InscriptionFinie = 0; } } }
/// <summary> /// Action du bouton Inscrire dans l'onglet Activité (Inscrire un adhérent à une activité) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonInscrireAdherentActivite_Click(object sender, EventArgs e) { /// Récupération de la ligne courante Activité et des valeurs de ses colonnes dans une variable currentRow cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Mise en variable de la valeur d'IdActivite de la ligne courante d'activité int IdActivite = currentRow.IdActivite; /// Récupération de la ligne courante des non-inscrits et de ses valeurs dans une variable currentRow2 cda27_bd2DataSet.adherents2Row currentRow2 = (cda27_bd2DataSet.adherents2Row)((DataRowView)adherents2BindingSource.Current).Row; /// Using de la FormInscriptionActivite (nouvelle fenêtre) pour faire un "dispose" à la fermeture using (FormInscriptionActivite frmInscriptionActivite = new FormInscriptionActivite()) { /// Envoie des valeurs des currentRow et currentRow2 dans des variables directement à la fenêtre fille frmInscriptionActivite.IdActivite = currentRow.IdActivite; frmInscriptionActivite.IdAdherent = currentRow2.IdAdherent; frmInscriptionActivite.textBoxIntituleAct.Text = currentRow.Intitulé; frmInscriptionActivite.textBoxDescription.Text = currentRow.Description; frmInscriptionActivite.textBoxTarifAdherent.Text = currentRow.Tarif_adhérent; frmInscriptionActivite.textBoxTarifInvite.Text = currentRow.Tarif_invité; frmInscriptionActivite.dateTimePickerDateDebutAct.Value = currentRow.Date_de_début; frmInscriptionActivite.dateTimePickerDateFinAct.Value = currentRow.Date_de_fin; frmInscriptionActivite.dateTimePickerDateLimiteAct.Value = currentRow._Date_limite_d_inscription; frmInscriptionActivite.textBoxLogin.Text = currentRow2.Login; frmInscriptionActivite.textBoxNom.Text = currentRow2.Nom; frmInscriptionActivite.textBoxPrenom.Text = currentRow2.Prénom; frmInscriptionActivite.textBoxCylindrée.Text = currentRow2.Cylindrée; /// Initialisation du textBox du nombre d'invité à 0 frmInscriptionActivite.textBoxNombreInvite.Text = "0"; /// Affichage de la fenêtre en mode Dialog frmInscriptionActivite.ShowDialog(); /// Si l'inscription se termine if (frmInscriptionActivite.InscriptionFinie == 1) { /// Je FillIntegral FillIntegral(); /// Je me repositionne sur l'activité précédemment séléctionnée activitesBindingSourceListeAct.Position = activitesBindingSourceListeAct.Find("IdActivite", IdActivite); /// InscriptionFinie est à présent à 0 frmInscriptionActivite.InscriptionFinie = 0; } } }
/// <summary> /// Action de bouton Supprimer (Supprimer l'activité) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonSupprimerActivite_Click(object sender, EventArgs e) { /// Je récupère la ligne courante du FormMain de l'activité cda27_bd2DataSet.activitesRow currentRowAdh = (cda27_bd2DataSet.activitesRow)((DataRowView)activitebind.Current).Row; /// J'affiche un message de confirmation de suppression DialogResult DiagResult = MessageBox.Show(Properties.Resources.STR_MESSAGE_SUPPRESSION_ACTIVITE, Properties.Resources.STR_TITRE_SUPPRESSION_ACTIVITE, MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2); /// Si l'utilisateur appuie sur le bouton Oui if (DiagResult == DialogResult.Yes) { /// J'exécute la requête de suppression avec les valeurs de la ligne séléctionnée dans le FormMain int nb = activiteTableAdapter.Delete(currentRowAdh.IdActivite, currentRowAdh.Intitulé, currentRowAdh.Date_de_début, currentRowAdh.Date_de_fin, currentRowAdh.Description, currentRowAdh.Tarif_adhérent, currentRowAdh.Tarif_invité, currentRowAdh._Date_limite_d_inscription, currentRowAdh.IdAdherent, currentRowAdh.IdType, currentRowAdh.Publié); /// Si la requête échoue if (nb == 0) { /// J'affiche un message d'erreur de suppression MessageBox.Show(Properties.Resources.STR_MESSAGE_SUPPRESSION_FAIL, Properties.Resources.STR_TITRE_SUPPRESSION_FAIL, MessageBoxButtons.OK, MessageBoxIcon.Information); } } /// Sinon else { /// Je quitte l'évenement return; } }
/// <summary> /// Action du bouton Supprimer dans l'onglet Activité (Supprimer une activité) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonSupprimerActivite_Click(object sender, EventArgs e) { /// Récupération de la ligne courrante pour une utilisation des valeurs de ses colonnes cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Affichage d'un message de confirmation de suppression d'activité DialogResult DiagResult = MessageBox.Show(Properties.Resources.STR_MESSAGE_SUPPRESSION_ACTIVITE, Properties.Resources.STR_TITRE_SUPPRESSION_ACTIVITE, MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2); /// Si l'utilisateur clique sur Yes if (DiagResult == DialogResult.Yes) { /// Je supprime l'activité en utilisant les valeurs de la ligne courante int nb = activiteTableAdapter1.Delete(currentRow.IdActivite, currentRow.Intitulé, currentRow.Date_de_début, currentRow.Date_de_fin, currentRow.Description, currentRow.Tarif_adhérent, currentRow.Tarif_invité, currentRow._Date_limite_d_inscription, currentRow.IdAdherent, currentRow.IdType, currentRow.Publié); /// Si le résultat de la requête est de 0 if (nb == 0) { /// J'affiche un message d'echec MessageBox.Show(Properties.Resources.STR_MESSAGE_SUPPRESSION_FAIL, Properties.Resources.STR_TITRE_SUPPRESSION_FAIL, MessageBoxButtons.OK, MessageBoxIcon.Information); } /// Je FillIntegral FillIntegral(); } }
/// <summary> /// Rafraîchissement intégral des dataGridViews /// TryCatch si la bdd est déconnectée alors on affiche un message d'erreur et on quitte le logiciel /// </summary> public void FillIntegral() { try { /// Si le filtre par date est coché if (checkBoxChoisirDate.Checked) { /// Je Fill entre les deux dates la liste des activités this.activitesTableAdapter.FillByDate(this.cda27_bd2DataSet.activites, dateTimePickerFirstDate.Value, dateTimePickerSecondDate.Value);; } else { /// Sinon je Fill tout court this.activitesTableAdapter.Fill(this.cda27_bd2DataSet.activites); } if (activitesBindingSourceListeAct.Current != null) { /// Je récupère la ligne d'activité séléctionnée cda27_bd2DataSet.activitesRow currentRow = (cda27_bd2DataSet.activitesRow)((DataRowView)activitesBindingSourceListeAct.Current).Row; /// Je Fill les inscriptions des adherents avec l'IdActivite de la ligne séléctionnée this.adherentinscriptionTableAdapter.FillBy(this.cda27_bd2DataSet1.adherentinscription, currentRow.IdActivite); /// Je Fill les adhérents non-inscrits this.adherents2TableAdapter.FillBy(this.cda27_bd2DataSet1.adherents2, currentRow.IdActivite); /// Je Fill les adherents this.adherentsTableAdapter.Fill(this.cda27_bd2DataSet.adherents); /// Je rends visible les datagrid inscrits et non inscrits car il y a une activité dataGridViewInscrits.Visible = true; dataGridViewNonInscrits.Visible = true; } /// Sinon je les rends invisible else { dataGridViewInscrits.Visible = false; dataGridViewNonInscrits.Visible = false; } if (adherentsBindingSource.Current != null) { /// Je récupère la ligne séléctionnée des adhérents cda27_bd2DataSet.adherentsRow currentRow2 = (cda27_bd2DataSet.adherentsRow)((DataRowView)adherentsBindingSource.Current).Row; /// Je Fill les inscriptions pour cet adhérent this.inscriptionsTableAdapter.Fill(this.cda27_bd2DataSet.inscriptions, currentRow2.IdAdherent); /// Si il y a un adhérent alors je rends visible ses inscriptions dataGridViewActiviteRelationAdherent.Visible = true; } /// Sinon je les rends invisible else { dataGridViewActiviteRelationAdherent.Visible = false; } /// Je Clear les selections des inscrits et non inscrits dataGridViewNonInscrits.ClearSelection(); dataGridViewInscrits.ClearSelection(); } catch (Exception ex) { VaSeFermer = true; MessageBox.Show(Properties.Resources.STR_MESSAGE_CONNEXION_BDD_ERROR, Properties.Resources.STR_TITRE_CONNEXION_BDD_ERROR, MessageBoxButtons.OK, MessageBoxIcon.Warning); this.Close(); } }