private void Delete() { bool confirmed = false; if (listBox1.SelectedItem == null) { return; } FormattedListBoxItem selectedItem = listBox1.SelectedItem as FormattedListBoxItem; if (selectedItem == null) { return; } if (ViewMode == SeatingViewMode.Rooms) { string message = (buttonEditToggle.IsEnabled ? Strings.AreYouSureYouWantToDeleteTheSelectedRoomAndAllItsSeatings : Strings.AreYouSureYouWantToDeleteTheSelectedRoom); if (PosDialogWindow.ShowDialog( message, Strings.ConfirmDeletion, DialogButtons.OkCancel) == DialogButton.Ok) { Room room = selectedItem.ReferenceObject as Room; if (room != null) { SeatingManager.DeleteRoom(room.Id); SeatingManager.DeleteAllSeating(room.Id); } buttonEditToggle.IsEnabled = false; roomEditorControl.IsEnabled = false; SelectedRoom = null; SelectedSeating = null; confirmed = true; } } else if (ViewMode == SeatingViewMode.Seating) { if (PosDialogWindow.ShowDialog( Strings.AreYouSureYouWantToDeleteTheSelectedSeating, Strings.ConfirmDeletion, DialogButtons.OkCancel) == DialogButton.Ok) { Seating seating = selectedItem.ReferenceObject as Seating; if (seating != null) { SeatingManager.DeleteSeating(seating.Id); } seatingEditorControl.IsEnabled = false; SelectedSeating = null; confirmed = true; } } if (confirmed) { listBox1.Items.Remove(selectedItem); listBox1.SelectedItem = null; buttonDelete.IsEnabled = false; } }