private void Supprimer_List <T>(object sender, RoutedEventArgs e, Boolean Message = false, Boolean UnItemMini = false) where T : ObjetGestion { ListBox V; ListeObservable <T> Liste; List <T> Ls; T L; if (Info(sender as MenuItem, out V, out Liste, out Ls, out L)) { int mini = UnItemMini ? 1 : 0; foreach (T iL in Ls) { Boolean Supprimer = !Message; if (Liste.Count > mini) { if (Message && MessageBox.Show(String.Format("Voulez vous vraiement supprimer : {0} {1} ?", DicIntitules.IntituleType(typeof(T).Name), iL.No), "Suppression", MessageBoxButton.OKCancel) == MessageBoxResult.OK) { Supprimer = true; } if (Supprimer && iL.Supprimer()) { Liste.Remove(iL); } } } Liste.Numeroter(); } }