using Aitex.Core.RT.SCCore; using Caliburn.Micro; using Caliburn.Micro.Core; using MECF.Framework.Common.DataCenter; using MECF.Framework.Common.RecipeCenter; using MECF.Framework.UI.Client.CenterViews.Editors.Recipe; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using FurnaceUI.Models; using FurnaceUI.Views.Parameter; using FurnaceUI.Views.Recipes; using System.Windows.Controls; using VPDataItem = MECF.Framework.UI.Client.CenterViews.Editors.Recipe.VPData; namespace FurnaceUI.Views.Editors { public class RecipeVPItemSelectViewModel : FurnaceUIViewModelBase { public ObservableCollection ItemGroup { get; set; } = new ObservableCollection(); public ObservableCollection SelectedItemList { get; set; } = new ObservableCollection(); public bool IsSave { get; set; } private string _selectedGroup; public string SelectedGroup { get => _selectedGroup; set { _selectedGroup = value; NotifyOfPropertyChange("SelectedGroup"); } } private string _selectedItem; public string SelectedItem { get => _selectedItem; set { _selectedItem = value; NotifyOfPropertyChange("SelectedItem"); } } public RecipeVPItemSelectViewModel() { } public bool IsEnable => CGlobal.RecipeProcessEditViewEnable;//是否是View模式 public string RecipeType { get; set; } protected override void OnViewLoaded(object view) { base.OnViewLoaded(view); LoadData(); } private void LoadData() { ItemGroup.Clear(); ItemGroup.Add("Step Time"); ItemGroup.Add("Temperature"); ItemGroup.Add("Loop Frequency"); ItemGroup.Add("SubRecipeLoop Frequency"); ItemGroup.Add("Thickness"); } public void ItemChecked(string cmd) { switch (cmd) { case "Step Time": CreateSelectedItemList("Time"); break; case "Temperature": CreateSelectedItemList("Temperature"); break; case "Loop Frequency": CreateSelectedItemList("Loop Frequency"); break; case "SubRecipeLoop Frequency": CreateSelectedItemList("SubRecipe"); break; case "Thickness": CreateSelectedItemList("Thickness"); break; default: break; } SelectedGroup = cmd; } private void CreateSelectedItemList(string cmd) { SelectedItemList.Clear(); for (int i = 0; i < 30; i++) { SelectedItemList.Add(new VPDataItem() { No = i + 1, Name = $"{cmd}{i + 1}", IsCheck = false }); } } public void SubItemChecked(string cmd) { SelectedItem = cmd; } public void TempSetSave() { IsSave = true; ((Window)GetView()).DialogResult = true; } public void TempSetCancel() { IsSave = false; ((Window)GetView()).DialogResult = false; } } }