MuseumsManager/MuseumsManager/MainWindow.xaml.cs
/// <summary>
/// Eliminazione giorno di apertura speciale per museo
/// </summary>
Eliminazione giorno di apertura speciale per museo
Eliminazione giorno di apertura speciale per museo
private void btn_aperturaSpeciale_elimina_Click(object sender, RoutedEventArgs e)
        {
            if (!(cmb_aperturaSpeciale_elimina.SelectedItem is null))
            {
                CalendarioApertureSpeciali cal = cmb_aperturaSpeciale_elimina.SelectedItem as CalendarioApertureSpeciali;
                int res = DBEntity.Delete<CalendarioApertureSpeciali>("idCalendarioApertureSpeciali", cal.idCalendarioApertureSpeciali);
                if (checkQueryResult(res))
                    MessageBox.Show("Giorno di apertura speciale eliminato correttamente!", "Operazione eseguita", MessageBoxButton.OK, MessageBoxImage.Information);
                cmb_aperturaSpeciale_elimina.ItemsSource = null;
            }
            List<CalendarioApertureSpeciali> lcas = DBObject<CalendarioApertureSpeciali>.Select("idMuseo", this.museoSelezionato.idMuseo);
            ObservableCollection<CalendarioApertureSpeciali> calendarioApertureSpeciali = new ObservableCollection<CalendarioApertureSpeciali>(lcas);
            calendarioApertureSpeciali.CollectionChanged += (s, eventArgs) =>
            {
                switch (eventArgs.Action)
                {
                    case NotifyCollectionChangedAction.Remove:
                        {
                            List<CalendarioApertureSpeciali> casRmv = new List<CalendarioApertureSpeciali>(eventArgs.OldItems.Cast<CalendarioApertureSpeciali>());
                            casRmv.ForEach(cas => DBEntity.Delete<CalendarioApertureSpeciali>("idCalendarioApertureSpeciali", cas.idCalendarioApertureSpeciali));
                            break;
                        }
                    case NotifyCollectionChangedAction.Add:
                        {
                            List<CalendarioApertureSpeciali> casAdd = new List<CalendarioApertureSpeciali>(eventArgs.NewItems.Cast<CalendarioApertureSpeciali>());
                            casAdd.ForEach(cas => cas.idMuseo = museoSelezionato.idMuseo);
                            casAdd.ForEach(cas =>
                            {
                                if (DBObject<CalendarioChiusure>.Select("idMuseo", cas.idMuseo, "Data", cas.Data).Count == 0)
                                    DBObject<CalendarioApertureSpeciali>.Insert("Data", cas.Data, "OrarioApertura", cas.OrarioApertura, "OrarioChiusura", cas.OrarioChiusura, "NumBigliettiMax", cas.NumBigliettiMax, "idMuseo", cas.idMuseo);
                            });
                            break;
                        }
                }
            };
            dtg_giornateAperturaSpeciale.DataContext = calendarioApertureSpeciali;
        }
private void btn_aperturaSpeciale_elimina_Click ( object sender , RoutedEventArgs e ) { if ( ! ( cmb_aperturaSpeciale_elimina . SelectedItem is null ) ) { CalendarioApertureSpeciali cal = cmb_aperturaSpeciale_elimina . SelectedItem as CalendarioApertureSpeciali ; int res = DBEntity . Delete < CalendarioApertureSpeciali > ( " " , cal . idCalendarioApertureSpeciali ) ; if ( checkQueryResult ( res ) ) MessageBox . Show ( " " , " " , MessageBoxButton . OK , MessageBoxImage . Information ) ; cmb_aperturaSpeciale_elimina . ItemsSource = null ; } List < CalendarioApertureSpeciali > lcas = DBObject < CalendarioApertureSpeciali > . Select ( " " , this . museoSelezionato . idMuseo ) ; ObservableCollection < CalendarioApertureSpeciali > calendarioApertureSpeciali = new ObservableCollection < CalendarioApertureSpeciali > ( lcas ) ; calendarioApertureSpeciali . CollectionChanged += ( s , eventArgs ) => { switch ( eventArgs . Action ) { case NotifyCollectionChangedAction . Remove : { List < CalendarioApertureSpeciali > casRmv = new List < CalendarioApertureSpeciali > ( eventArgs . OldItems . Cast < CalendarioApertureSpeciali > ( ) ) ; casRmv . ForEach ( cas => DBEntity . Delete < CalendarioApertureSpeciali > ( " " , cas . idCalendarioApertureSpeciali ) ) ; break ; } case NotifyCollectionChangedAction . Add : { List < CalendarioApertureSpeciali > casAdd = new List < CalendarioApertureSpeciali > ( eventArgs . NewItems . Cast < CalendarioApertureSpeciali > ( ) ) ; casAdd . ForEach ( cas => cas . idMuseo = museoSelezionato . idMuseo ) ; casAdd . ForEach ( cas => { if ( DBObject < CalendarioChiusure > . Select ( " " , cas . idMuseo , " " , cas . Data ) . Count == 0 ) DBObject < CalendarioApertureSpeciali > . Insert ( " " , cas . Data , " " , cas . OrarioApertura , " " , cas . OrarioChiusura , " " , cas . NumBigliettiMax , " " , cas . idMuseo ) ; } ) ; break ; } } } ; dtg_giornateAperturaSpeciale . DataContext = calendarioApertureSpeciali ; }
Eliminazione giorno di apertura speciale per museo
Eliminazione giorno di apertura speciale per museo
sender
object
e
RoutedEventArgs