using MECF.Framework.Common.CommonData.Prewet; using MECF.Framework.Common.Equipment; using MECF.Framework.Common.OperationCenter; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace CyberX8_Themes.UserControls { /// /// SrdAwcCycleControl.xaml 的交互逻辑 /// public partial class SrdAwcCycleControl : UserControl { public SrdAwcCycleControl() { InitializeComponent(); } #region 属性 public static readonly DependencyProperty SRDModuleNameProperty = DependencyProperty.Register( "SRDModuleName", typeof(ModuleName), typeof(SrdAwcCycleControl), new FrameworkPropertyMetadata(ModuleName.Unknown, FrameworkPropertyMetadataOptions.AffectsRender)); /// /// SRD ModuleName /// public ModuleName SRDModuleName { get { return (ModuleName)this.GetValue(SRDModuleNameProperty); } set { this.SetValue(SRDModuleNameProperty, value); } } public static readonly DependencyProperty CyclesProperty = DependencyProperty.Register( "Cycles", typeof(int), typeof(SrdAwcCycleControl), new FrameworkPropertyMetadata(0, FrameworkPropertyMetadataOptions.AffectsRender)); /// /// Cycles /// public int Cycles { get { return (int)this.GetValue(CyclesProperty); } set { this.SetValue(CyclesProperty, value); } } public static readonly DependencyProperty IsRunningProperty = DependencyProperty.Register( "IsRunning", typeof(bool), typeof(SrdAwcCycleControl),new FrameworkPropertyMetadata(false, FrameworkPropertyMetadataOptions.AffectsRender)); /// /// IsRunning /// public bool IsRunning { get { return (bool)this.GetValue(IsRunningProperty); } set { this.SetValue(IsRunningProperty, value); } } #endregion private void Start_Click(object sender, RoutedEventArgs e) { if (Cycles == 0) { MessageBox.Show("Please Enter CycleTimes First!", "Current Cycle is 0", MessageBoxButton.OK, MessageBoxImage.Error); } else { if(SRDModuleName != ModuleName.Unknown) { InvokeClient.Instance.Service.DoOperation($"{SRDModuleName}.AWCCycle", Cycles); } else { MessageBox.Show("Please Select SRD Module First!", "No SRD Module is selected", MessageBoxButton.OK, MessageBoxImage.Error); } } } private void Stop_Click(object sender, RoutedEventArgs e) { InvokeClient.Instance.Service.DoOperation($"{SRDModuleName}.Abort"); } private void SRDModuleName_Checked(object sender, RoutedEventArgs e) { RadioButton radioButton = (sender as RadioButton); if (radioButton != null && radioButton.Content != null) { SRDModuleName = (ModuleName)Enum.Parse(typeof(ModuleName), radioButton.Content.ToString()); if(SRDModuleName == ModuleName.SRD1) { SRD2.IsChecked = false; } else if (SRDModuleName == ModuleName.SRD2) { SRD1.IsChecked = false; } } } } }