CopyImageWindow.xaml.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using System;
  2. using System.Windows;
  3. using AIPlatform.Protocol.Entities;
  4. using AIPlatform.Protocol.Utilities;
  5. namespace aipdev
  6. {
  7. /// <summary>
  8. /// Interaction logic for CopyImageWindow.xaml
  9. /// </summary>
  10. public partial class CopyImageWindow : Window
  11. {
  12. public ImageFolder SelectedFolder { get; private set; }
  13. public long ImageCategoryId { get; private set; }
  14. public CopyImageWindow(long imageCategoryId)
  15. {
  16. InitializeComponent();
  17. ImageCategoryId = imageCategoryId;
  18. Loaded += OnLoaded;
  19. }
  20. private async void OnLoaded(object sender, RoutedEventArgs e)
  21. {
  22. ContentManager.ShowLoading();
  23. try
  24. {
  25. var folders = await DeveloperManager.Shared.GetDeveloperFoldersAsync(0, 1000, false);
  26. foreach (var folder in folders)
  27. {
  28. if (folder.ImageCategoryId == ImageCategoryId)
  29. {
  30. DeveloperFolders.Items.Add(folder);
  31. }
  32. }
  33. if (DeveloperFolders.Items.Count > 0)
  34. {
  35. DeveloperFolders.SelectedIndex = 0;
  36. }
  37. else
  38. {
  39. MessageBox.Show(Application.Current.MainWindow, $"没有符合目标的文件夹", "提示", MessageBoxButton.OK, MessageBoxImage.Warning);
  40. Close();
  41. }
  42. }
  43. catch (Exception ex)
  44. {
  45. MessageBox.Show(Application.Current.MainWindow, $"加载文件夹列表失败:{ex.Translate()}", "错误", MessageBoxButton.OK, MessageBoxImage.Error);
  46. }
  47. finally
  48. {
  49. ContentManager.HideLoading();
  50. }
  51. }
  52. private void OnCloseClick(object sender, RoutedEventArgs e)
  53. {
  54. SelectedFolder = null;
  55. Close();
  56. }
  57. private void OnOKClick(object sender, RoutedEventArgs e)
  58. {
  59. SelectedFolder = (ImageFolder)DeveloperFolders.SelectedItem;
  60. if (SelectedFolder == null)
  61. {
  62. MessageBox.Show(this, "请选择目标文件夹", "错误", MessageBoxButton.OK, MessageBoxImage.Error);
  63. }
  64. else
  65. {
  66. Close();
  67. }
  68. }
  69. }
  70. }