|
@@ -23,26 +23,54 @@ namespace Savelev_ToursApp
|
|
|
public HotelsPage()
|
|
|
{
|
|
|
InitializeComponent();
|
|
|
- DGridHotels.ItemsSource = Savelev_ToursEntities.GetContext().Hotel.ToList();
|
|
|
+ DGridHotels.ItemsSource = Savelev_ToursEntities.GetContext().Hotels.ToList();
|
|
|
}
|
|
|
|
|
|
private void Button_Click(object sender, RoutedEventArgs e)
|
|
|
{
|
|
|
- Manager.MainFrame.Navigate(new AddEditPage());
|
|
|
+ Manager.MainFrame.Navigate(new AddEditPage((sender as Button).DataContext as Hotel));
|
|
|
}
|
|
|
|
|
|
private void BtnEdit_Click(object sender, RoutedEventArgs e)
|
|
|
{
|
|
|
-
|
|
|
+ Manager.MainFrame.Navigate(new AddEditPage((sender as Button).DataContext as Hotel));
|
|
|
}
|
|
|
|
|
|
private void BtnAdd_Click(object sender, RoutedEventArgs e)
|
|
|
{
|
|
|
- Manager.MainFrame.Navigate(new AddEditPage());
|
|
|
+ Manager.MainFrame.Navigate(new AddEditPage(null));
|
|
|
}
|
|
|
private void BtnDelete_Click(object sender, RoutedEventArgs e)
|
|
|
{
|
|
|
+ var hotelsForRemoving = DGridHotels.SelectedItems.Cast<Hotel>().ToList();
|
|
|
+
|
|
|
+ if (MessageBox.Show($"Вы точно хотите удалить следующие {hotelsForRemoving.Count()} элементов?", "Внимание",
|
|
|
+ MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
|
|
|
+ {
|
|
|
+ try
|
|
|
+
|
|
|
+ {
|
|
|
+ Savelev_ToursEntities.GetContext().Hotels.RemoveRange(hotelsForRemoving);
|
|
|
+ Savelev_ToursEntities.GetContext().SaveChanges();
|
|
|
+ MessageBox.Show("Удалено");
|
|
|
+
|
|
|
+ DGridHotels.ItemsSource = Savelev_ToursEntities.GetContext().Hotels.ToList();
|
|
|
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ MessageBox.Show(ex.Message.ToString());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void Page_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
|
|
|
+ {
|
|
|
+ if (Visibility == Visibility.Visible)
|
|
|
+ {
|
|
|
+ Savelev_ToursEntities.GetContext().ChangeTracker.Entries().ToList().ForEach(p => p.Reload());
|
|
|
+ DGridHotels.ItemsSource = Savelev_ToursEntities.GetContext().Hotels.ToList();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|