using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using WpfApp1.Entities; namespace WpfApp1 { /// /// Логика взаимодействия для HotelsPage.xaml /// public partial class HotelsPage : Page { public HotelsPage() { InitializeComponent(); //DGridHotels.ItemsSource = new Entities.user7Entities().User.ToList(); } private void BtnEdit_Click(object sender, RoutedEventArgs e) { Manager.MainFrame.Navigate(new AddEditPage((sender as Button).DataContext as User)); } private void BtnAdd_Click(object sender, RoutedEventArgs e) { Manager.MainFrame.Navigate(new AddEditPage(null)); } private void BtnDelete_Click(object sender, RoutedEventArgs e) { var usersForRemoving = DGridHotels.SelectedItems.Cast().ToList(); if (MessageBox.Show($"Вы уверены что хотите удалить следующую {usersForRemoving.Count()} запись!?", "Внимание!", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { try { usersForRemoving.ForEach(user => { user.IsDeleted = true; }); user7Entities.GetContext().SaveChanges(); MessageBox.Show("Данные удалены!!"); DGridHotels.ItemsSource = user7Entities.GetContext().User.Where(u => u.IsDeleted == false).ToList(); } catch (Exception ex) { var inner = ex.InnerException; MessageBox.Show(inner.ToString()); } } } private void Page_IsVisibleChanged (object sender, DependencyPropertyChangedEventArgs e) { if (Visibility == Visibility.Visible) { user7Entities.GetContext().ChangeTracker.Entries().ToList().ForEach(p => p.Reload()); DGridHotels.ItemsSource = user7Entities.GetContext().User.ToList(); } } } }