Advertisement
Guest User

123

a guest
Oct 19th, 2019
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.51 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Windows;
  7. using System.Windows.Controls;
  8. using System.Windows.Data;
  9. using System.Windows.Documents;
  10. using System.Windows.Input;
  11. using System.Windows.Media;
  12. using System.Windows.Media.Imaging;
  13. using System.Windows.Navigation;
  14. using System.Windows.Shapes;
  15. using System.Data;
  16. using System.Collections.ObjectModel;
  17. using System.Data.Entity.Core.Objects;
  18. using System.Data.Entity;
  19.  
  20. namespace HomeWork_Kr.Pages
  21.  
  22. {
  23. /// <summary>
  24. /// Логика взаимодействия для PageEmployee.xaml
  25. /// </summary>
  26. public partial class PageEmployee : Page
  27. {
  28. ObservableCollection<Employee> ListEmployee;
  29. public static TitleEmployeeEntities DataEntitiesEmployee { get; set; }
  30. private void Page_Loaded(object sender, RoutedEventArgs e)
  31. {
  32. GetEmployees();
  33. DataGridEmployee.SelectedIndex=0;
  34. }
  35.  
  36. public PageEmployee()
  37. {
  38. GetEmployees();
  39. DataGridEmployee.SelectedIndex = 0;
  40.  
  41. }
  42. private bool isDirty = true;
  43. private void GetEmployees()
  44. {
  45. var employees = DataEntitiesEmployee.Employees;
  46. var queryEmployee = from employee in employees
  47. orderby employee.Surname
  48. select employee;
  49. foreach (Employee emp in queryEmployee)
  50. {
  51. ListEmployee.Add(emp);
  52. }
  53. DataGridEmployee.ItemsSource = ListEmployee;
  54. }
  55. private void RewriteEmployee()
  56. {
  57. // DataEntitiesEmployee = new TitlePresonalEntities();
  58. // ListEmployee.Clear();
  59. //GetEmployees();
  60. }
  61. private void UndoCommandBinding_Executed(object sender,
  62. ExecutedRoutedEventArgs e)
  63. {
  64. RewriteEmployee();
  65. DataGridEmployee.IsReadOnly = true;
  66. isDirty = true;
  67.  
  68. }
  69. private void EditCommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e)
  70. {
  71. DataGridEmployee.IsReadOnly = false;
  72. DataGridEmployee.BeginEdit();
  73. isDirty = false;
  74.  
  75. }
  76. private void SaveCommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e)
  77. {
  78. DataEntitiesEmployee.SaveChanges();
  79. isDirty = true;
  80. DataGridEmployee.IsReadOnly = true;
  81. }
  82. private void UndoCommandBilding_Executed(object sender, ExecutedRoutedEventArgs e)
  83. {
  84. MessageBox.Show("Отмена");
  85. isDirty = true;
  86. }
  87. private void EditCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
  88. {
  89. MessageBox.Show("Редактирование");
  90. isDirty = false;
  91. }
  92. private void NewCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
  93. {
  94. Employee employee = new Employee()
  95. {
  96. id = -1,
  97. Surname = "Не задано",
  98. Name = "Не задано",
  99. Patronymic = "Не задано",
  100. Telephone = "Не задано",
  101. Email = "Не задано",
  102. TitleID = 0
  103. };
  104. try
  105. {
  106. DataEntitiesEmployee.Employees.Add(employee);
  107. ListEmployee.Add(employee);
  108. DataGridEmployee.ScrollIntoView(employee);
  109. DataGridEmployee.SelectedIndex = DataGridEmployee.Items.Count - 1;
  110. DataGridEmployee.Focus();
  111. DataGridEmployee.IsReadOnly = false;
  112. isDirty = false;
  113. }
  114. catch (Exception ex)
  115. {
  116. throw new ApplicationException("Ошибка добавления нового сотрудника в контент данных"+ex.ToString());
  117. }
  118.  
  119. }
  120. private void FindCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
  121. {
  122. MessageBox.Show("Поиск");
  123. }
  124. private void SaveCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
  125. {
  126. MessageBox.Show("Сохранить");
  127. isDirty = true;
  128. }
  129. private void DeleteCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
  130. {
  131. Employee emp = DataGridEmployee.SelectedItem as Employee;
  132. if (emp != null)
  133. {
  134. MessageBoxResult result = MessageBox.Show("Удалить сотрудника: " +
  135. emp.Surname + " " + emp.Name + " " + emp.Patronymic,
  136. "Предупреждение", MessageBoxButton.OKCancel);
  137. if (result == MessageBoxResult.OK)
  138. {
  139. //DataEntitiesEmployee.Remove(emp);
  140. DataGridEmployee.SelectedIndex =
  141. DataGridEmployee.SelectedIndex == 0 ? 1 : DataGridEmployee.SelectedIndex - 1;
  142. ListEmployee.Remove(emp);
  143. DataEntitiesEmployee.SaveChanges();
  144. }
  145. }
  146. else
  147. {
  148. MessageBox.Show("Выберите строку для удаления");
  149. }
  150.  
  151. }
  152.  
  153. private void DataGridEmployee_SelectionChanged(object sender, SelectionChangedEventArgs e)
  154. {
  155.  
  156. }
  157. }
  158. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement