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); }
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 (Inscrire l'adhérent à une activité) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonInscrireAdherentActivite_Click(object sender, EventArgs e) { if (ModificationEnCours == true) { /// Verification du nombre d'invité if (!IsNbInvite(textBoxNombreInvite.Text)) { /// Si l'expression régulière échoue, message : Nombre d'invité non valide MessageBox.Show(Properties.Resources.STR_MESSAGE_NBINVITE_NONVALIDE, Properties.Resources.STR_TITRE_NBINVITE_NONVALIDE, MessageBoxButtons.OK, MessageBoxIcon.Information); } else { /// Sinon, j'exécute la requête d'insertion avec la date du jour, /// L'IdAdherent précédemment extrait du FormMain et du BindingSource /// Et l'IdActivite /// cda27_bd2DataSet.adherentinscriptionRow currentRow2 = (cda27_bd2DataSet.adherentinscriptionRow)((DataRowView)inscriptionAct.Current).Row; int nb = inscriptionTableAdapter1.Update(DateTime.Now, Convert.ToInt32(textBoxNombreInvite.Text), IdAdherent, IdActivite, currentRow2.IdInscription, currentRow2.DInscription, currentRow2.NbInvités, currentRow2.IdAdherent, currentRow2.IdActivite); /// Si la requête échoue if (nb == 0) { /// J'affiche un message d'echec MessageBox.Show(Properties.Resources.STR_MESSAGE_INSCRIPTION_FAIL, Properties.Resources.STR_TITRE_INSCRIPTION_FAIL, MessageBoxButtons.OK, MessageBoxIcon.Information); /// Je quitte l'évenement return; } /// L'inscription est finie, j'utiliserai la variable InscriptionFinie dans le FormMain InscriptionFinie = 1; /// Je ferme la fenêtre Close(); } } else { /// Verification du nombre d'invité if (!IsNbInvite(textBoxNombreInvite.Text)) { /// Si l'expression régulière échoue, message : Nombre d'invité non valide MessageBox.Show(Properties.Resources.STR_MESSAGE_NBINVITE_NONVALIDE, Properties.Resources.STR_TITRE_NBINVITE_NONVALIDE, MessageBoxButtons.OK, MessageBoxIcon.Information); } else { /// Sinon, j'exécute la requête d'insertion avec la date du jour, /// L'IdAdherent précédemment extrait du FormMain et du BindingSource /// Et l'IdActivite int nb = inscriptionTableAdapter1.Insert(DateTime.Now, Convert.ToInt32(textBoxNombreInvite.Text), IdAdherent, IdActivite); /// Si la requête échoue if (nb == 0) { /// J'affiche un message d'echec MessageBox.Show(Properties.Resources.STR_MESSAGE_INSCRIPTION_FAIL, Properties.Resources.STR_TITRE_INSCRIPTION_FAIL, MessageBoxButtons.OK, MessageBoxIcon.Information); /// Je quitte l'évenement return; } /// L'inscription est finie, j'utiliserai la variable InscriptionFinie dans le FormMain InscriptionFinie = 1; /// Je ferme la fenêtre Close(); } } }