コード例 #1
0
        private void bs_CurrentChanged(object sender, EventArgs e)
        {
            if (bs.Current != null)
            {
                Employe leEmploye = (Employe)bs.Current;
                if (leEmploye.LeService == null)
                {
                    cb_service.SelectedIndex = -1;//il faut forcer la propriété SelectedIndex de cb_service
                    //a -1 dans le cas des valeurs nulles pour la propriété LeService
                }
                if (leEmploye.EntityState == EntityState.Detached)
                {
                    bs.EndEdit();
                    bs.RaiseListChangedEvents = false;
                    bd.SaveChanges();
                    bs.RaiseListChangedEvents = true;
                    bs.ResetCurrentItem();
                }
                else
                {
                    bd.SaveChanges();
                }

                bs_autresDiplomes.DataSource = bd.Diplome.ToList().Except(leEmploye.LesDiplomes).ToList();//l'appel de la méthode ToList lors de l'affectation du DataSource
                //de bs_autresDiplomes force la requete Linq à s'éxécuter
                //en l'abscence du dernier ToList(), l'affectation de DisplayMember ci-dessous échoue avec une liste vide
                lb_autresDiplomes.DisplayMember = "dip_libelle";
            }
        }
コード例 #2
0
 private void diplomeBindingNavigatorSaveItem_Click(object sender, EventArgs e)
 {
     if (bs.Current != null)
     {
         bs.EndEdit();
         bd.SaveChanges();
     }
 }