CoinKernelEdit.xaml.cs 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. using NTMiner.Core;
  2. using NTMiner.Vms;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Windows;
  6. using System.Windows.Controls;
  7. namespace NTMiner.Views.Ucs {
  8. public partial class CoinKernelEdit : UserControl {
  9. public static void ShowWindow(FormType formType, CoinKernelViewModel source) {
  10. ContainerWindow.ShowWindow(new ContainerWindowViewModel {
  11. Title = "币种级参数",
  12. FormType = formType,
  13. Width = 700,
  14. IsMaskTheParent = true,
  15. IconName = "Icon_Kernel",
  16. CloseVisible = Visibility.Visible,
  17. FooterVisible = Visibility.Collapsed
  18. }, ucFactory: (window) =>
  19. {
  20. CoinKernelViewModel vm = new CoinKernelViewModel(source);
  21. window.AddCloseWindowOnecePath(vm.Id);
  22. return new CoinKernelEdit(vm);
  23. }, fixedSize: true);
  24. }
  25. public CoinKernelViewModel Vm { get; private set; }
  26. public CoinKernelEdit(CoinKernelViewModel vm) {
  27. this.Vm = vm;
  28. this.DataContext = vm;
  29. InitializeComponent();
  30. }
  31. private void DataGrid_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e) {
  32. WpfUtil.DataGrid_MouseDoubleClick<EnvironmentVariable>(sender, e, rowVm => {
  33. Vm.EditEnvironmentVariable.Execute(rowVm);
  34. });
  35. }
  36. private void DataGridSegments_MouseDoubleClick(object sender, System.Windows.Input.MouseButtonEventArgs e) {
  37. WpfUtil.DataGrid_MouseDoubleClick<InputSegmentViewModel>(sender, e, rowVm => {
  38. Vm.EditSegment.Execute(rowVm);
  39. });
  40. }
  41. private void ButtonAddFileWriter_Click(object sender, RoutedEventArgs e) {
  42. PopupFileWriter.Child = new FileWriterSelect(
  43. new FileWriterSelectViewModel( onOk: selectedResult => {
  44. if (selectedResult != null) {
  45. var fileWriterIds = new List<Guid>(this.Vm.FileWriterIds) {
  46. selectedResult.Id
  47. };
  48. this.Vm.FileWriterIds = fileWriterIds;
  49. PopupFileWriter.IsOpen = false;
  50. }
  51. }) {
  52. HideView = new DelegateCommand(() => {
  53. PopupFileWriter.IsOpen = false;
  54. })
  55. });
  56. PopupFileWriter.IsOpen = true;
  57. }
  58. private void ButtonAddFragmentWriter_Click(object sender, RoutedEventArgs e) {
  59. PopupFragmentWriter.Child = new FragmentWriterSelect(
  60. new FragmentWriterSelectViewModel(onOk: selectedResult => {
  61. if (selectedResult != null) {
  62. var fileWriterIds = new List<Guid>(this.Vm.FragmentWriterIds) {
  63. selectedResult.Id
  64. };
  65. this.Vm.FragmentWriterIds = fileWriterIds;
  66. PopupFragmentWriter.IsOpen = false;
  67. }
  68. }) {
  69. HideView = new DelegateCommand(() => {
  70. PopupFragmentWriter.IsOpen = false;
  71. })
  72. });
  73. PopupFragmentWriter.IsOpen = true;
  74. }
  75. }
  76. }