using MyApp.ExampleDataSetTableAdapters; using MyApp.Services; using System; using System.Data; using System.Linq; using System.Windows; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Media; using System.Windows.Navigation; namespace MyApp.AdminPages { public partial class AdminRoles : Page { RoleTableAdapter roleTableAdapter = new RoleTableAdapter(); public AdminRoles() { InitializeComponent(); Role_DG.ItemsSource = roleTableAdapter.GetData(); SortCB.ItemsSource = SearchAndSort.NotFullSortBy; } //Поиск и сортировка private void StartSearchButton_Click(object sender, RoutedEventArgs e) { if (SearchTB.Text != "Поиск..." & SearchTB.Text != "") { SearchAndSort.Search(roleTableAdapter, Role_DG, SearchTB.Text); } else { Role_DG.ItemsSource = roleTableAdapter.GetData(); } } private void SortCB_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (SortCB.SelectedItem != null) { ForSortCB.Visibility = Visibility.Collapsed; } if (SortCB.SelectedItem.ToString() == "По алфавиту") { SearchAndSort.SortByAlphabet(roleTableAdapter, Role_DG); } } //кнопки закрытия приложения и сворачивания private void Button_Click(object sender, RoutedEventArgs e) { Window ownerWindow = Application.Current.Windows.OfType<Window>().SingleOrDefault(w => w.Title == "MainWindow"); ownerWindow.Close(); } //исчезновение подсказок private void Button_Click_1(object sender, RoutedEventArgs e) { Window ownerWindow = Application.Current.Windows.OfType<Window>().SingleOrDefault(w => w.Title == "MainWindow"); ownerWindow.WindowState = WindowState.Minimized; } private void SearchTB_MouseEnter(object sender, MouseEventArgs e) { if (SearchTB.Text == "Поиск...") { SearchTB.Text = ""; SearchTB.Foreground = Brushes.White; } } private void SearchTB_MouseLeave(object sender, MouseEventArgs e) { if (SearchTB.Text == "") { SearchTB.Text = "Поиск..."; SolidColorBrush sb = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#6BFFFFFF")); SearchTB.Foreground = sb; } } private void RoleTB_MouseEnter(object sender, MouseEventArgs e) { if (RoleTB.Text == "Роль") { RoleTB.Text = ""; RoleTB.Foreground = Brushes.White; } } private void RoleTB_MouseLeave(object sender, MouseEventArgs e) { if (RoleTB.Text == "") { RoleTB.Text = "Роль"; SolidColorBrush sb = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#6BFFFFFF")); RoleTB.Foreground = sb; } } private void DescriptionTB_MouseEnter(object sender, MouseEventArgs e) { if (DescriptionTB.Text == "Описание") { DescriptionTB.Text = ""; DescriptionTB.Foreground = Brushes.White; } } private void DescriptionTB_MouseLeave(object sender, MouseEventArgs e) { if (DescriptionTB.Text == "") { DescriptionTB.Text = "Описание"; SolidColorBrush sb = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#6BFFFFFF")); DescriptionTB.Foreground = sb; } } //навигация по страницам private void ItemsPageButton_Click(object sender, RoutedEventArgs e) { NavigationService.Navigate(new AdminProducts()); } private void OrdersPageButton_Click(object sender, RoutedEventArgs e) { NavigationService.Navigate(new AdminOrders()); } private void RolesPageButton_Click(object sender, RoutedEventArgs e) { NavigationService.Navigate(new AdminRoles()); } private void UsersPageButton_Click(object sender, RoutedEventArgs e) { NavigationService.Navigate(new AdminUsers()); } //CRUD private void Role_DG_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (Role_DG.SelectedItem != null) { SolidColorBrush sb = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#FFFFFF")); var role = (Role_DG.SelectedItem as DataRowView).Row[1]; RoleTB.Text = role.ToString(); RoleTB.Foreground = sb; var description = (Role_DG.SelectedItem as DataRowView).Row[2]; DescriptionTB.Text = description.ToString(); DescriptionTB.Foreground = sb; } } private void AddButton_Click(object sender, RoutedEventArgs e) { if (RoleTB.Text != "" & DescriptionTB.Text != "" & RoleTB.Text != null & DescriptionTB.Text !=null) { if (RoleTB.Text != "Роль" & DescriptionTB.Text != "Описание") { int KolvoElementov = Role_DG.Items.Count; var GetLastIndex = (Role_DG.Items.GetItemAt(KolvoElementov-1) as DataRowView).Row[0]; roleTableAdapter.Insert((int)GetLastIndex+1, RoleTB.Text, DescriptionTB.Text); Role_DG.ItemsSource = roleTableAdapter.GetData(); } } } private void DelButton_Click(object sender, RoutedEventArgs e) { if (RoleTB.Text != "" & DescriptionTB.Text != "" & RoleTB.Text != null & DescriptionTB.Text != null) { try { var index = (Role_DG.SelectedItem as DataRowView).Row[0]; roleTableAdapter.Delete((int)index, RoleTB.Text, DescriptionTB.Text); Role_DG.ItemsSource = roleTableAdapter.GetData(); } catch(Exception) { return; } } } private void ChangeButton_Click(object sender, RoutedEventArgs e) { if (RoleTB.Text != "" & DescriptionTB.Text != "" & RoleTB.Text != null & DescriptionTB.Text != null) { try { var index = (Role_DG.SelectedItem as DataRowView).Row[0]; var OriginalTitle = (Role_DG.SelectedItem as DataRowView).Row[1]; var OriginalDescription = (Role_DG.SelectedItem as DataRowView).Row[2]; if (OriginalTitle.ToString() != RoleTB.Text | OriginalDescription.ToString() != DescriptionTB.Text) { roleTableAdapter.Update((int)index, RoleTB.Text, DescriptionTB.Text, (int)index, OriginalTitle.ToString(), OriginalDescription.ToString()); Role_DG.ItemsSource = roleTableAdapter.GetData(); } } catch(Exception) { return; } } } } }