using Glorysoft.SECS.EQP.Common; using System; using System.Collections; namespace Glorysoft.SECS.EQP { public class SimulatorInfo { #region 委托事件 public delegate void PropertyChangedEventHandler(); public event PropertyChangedEventHandler PropertyChanged; protected virtual void OnPropertyChanged() { PropertyChanged?.Invoke(); } #endregion 委托事件 private static readonly Lazy LazyInstance = new Lazy(() => new SimulatorInfo()); private SimulatorInfo() { } public static SimulatorInfo Instance => LazyInstance.Value; public SECSContext Context { get; set; } private bool _isConnected = false; public bool IsConnected { get { return _isConnected; } set { if (_isConnected != value) { _isConnected = value; OnPropertyChanged(); } } } private string _showInfo; public string ShowInfo { get { return _showInfo; } set { if (_showInfo != value) { _showInfo = value; if (!string.IsNullOrWhiteSpace(value)) OnPropertyChanged(); } } } private string _recipeList; public string RecipeList { get { return _recipeList; } set { if (_recipeList != value) { _recipeList = value; if (!string.IsNullOrWhiteSpace(value)) OnPropertyChanged(); } } } private string _workFLowFlag; public string WorkFLowFlag { get { return _workFLowFlag; } set { if (_workFLowFlag != value) { _workFLowFlag = value; if (!string.IsNullOrWhiteSpace(value)) OnPropertyChanged(); } } } public ScenarioCollection Scenarios { get; set; } } }