SaveToDialogViewModel.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System.Collections.Generic;
  2. using System.Collections.ObjectModel;
  3. using System.Windows.Input;
  4. using DocumentFormat.OpenXml.Office2010.ExcelAc;
  5. using MECF.Framework.Common.CommonData;
  6. using OpenSEMI.ClientBase;
  7. namespace MECF.Framework.UI.Client.CenterViews.Editors.Recipe
  8. {
  9. public class ChamberItem : NotifiableItem
  10. {
  11. public string Name { get; set; }
  12. public bool IsChecked { get; set; }
  13. public bool IsEnabled { get; set; }
  14. }
  15. public class SaveToDialogViewModel : DialogViewModel<string>
  16. {
  17. public string Chamber { get; set; }
  18. public ObservableCollection<ChamberItem> Chambers { get; set; }
  19. public SaveToDialogViewModel(string dialogName, string chamber, List<string> chambers)
  20. {
  21. this.DisplayName = dialogName;
  22. Chambers = new ObservableCollection<ChamberItem>();
  23. foreach (var chamber1 in chambers)
  24. {
  25. Chambers.Add(new ChamberItem()
  26. {
  27. IsChecked = false,
  28. IsEnabled = chamber1!=chamber,
  29. Name = chamber1,
  30. });
  31. }
  32. }
  33. public void Cancel()
  34. {
  35. IsCancel = true;
  36. TryClose(false);
  37. }
  38. protected override void OnViewLoaded(object view)
  39. {
  40. base.OnViewLoaded(view);
  41. SaveToDialogView v = (SaveToDialogView)view;
  42. FocusManager.SetFocusedElement(v, v.ListBoxChamber);
  43. }
  44. public void OK()
  45. {
  46. this.DialogResult = Chamber;
  47. IsCancel = false;
  48. TryClose(true);
  49. }
  50. }
  51. }