RoleWindow.axaml.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using System;
  2. using Avalonia;
  3. using Avalonia.Controls;
  4. using Avalonia.Interactivity;
  5. using Avalonia.Markup.Xaml;
  6. using FirstSlice.Models;
  7. namespace FirstSlice;
  8. public partial class RoleWindow : Window
  9. {
  10. private Role role_ = null;
  11. public RoleWindow()
  12. {
  13. InitializeComponent();
  14. }
  15. public RoleWindow(Role role)
  16. {
  17. InitializeComponent();
  18. role_ = role;
  19. TextRole.Text = role_.Name;
  20. }
  21. private void OnSaveRoleClick(object? sender, RoutedEventArgs e)
  22. {
  23. if (String.IsNullOrWhiteSpace(TextRole.Text))
  24. {
  25. return;
  26. }
  27. if (role_ != null)
  28. {
  29. role_.Name = TextRole.Text;
  30. Helper.GetContext().Update(role_);
  31. Helper.GetContext().SaveChanges();
  32. this.Close();
  33. }
  34. else
  35. {
  36. var newRole = new Role();
  37. newRole.Name = TextRole.Text;
  38. Helper.GetContext().Add(newRole);
  39. Helper.GetContext().SaveChanges();
  40. this.Close();
  41. }
  42. }
  43. }