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;
}
}
}
}
}