| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 | 
							- using Caliburn.Micro.Core;
 
- using DocumentFormat.OpenXml.Office2010.Excel;
 
- using FurnaceUI.Models;
 
- using MECF.Framework.UI.Client.CenterViews.Configs.SystemConfig;
 
- using System;
 
- using System.Collections.ObjectModel;
 
- using System.Linq;
 
- using System.Windows;
 
- using System.Windows.Controls;
 
- namespace FurnaceUI.Views.Editors
 
- {
 
-     public class RecipeStepNameViewModel : FurnaceUIViewModelBase
 
-     {
 
-         public class StepInfo : PropertyChangedBase
 
-         {
 
-             private string _number;
 
-             public string Number
 
-             {
 
-                 get { return _number; }
 
-                 set { _number = value; this.NotifyOfPropertyChange(nameof(Number)); }
 
-             }
 
-             private string _Name;
 
-             public string Name
 
-             {
 
-                 get { return _Name; }
 
-                 set { _Name = value; this.NotifyOfPropertyChange(nameof(Name)); }
 
-             }
 
-             private bool _IsChecked;
 
-             public bool IsChecked
 
-             {
 
-                 get { return _IsChecked; }
 
-                 set { _IsChecked = value; this.NotifyOfPropertyChange(nameof(IsChecked)); }
 
-             }
 
-         }
 
-         public ObservableCollection<StepInfo> Steps { get; set; } = new ObservableCollection<StepInfo>();
 
-         public bool IsEnable => CGlobal.RecipeProcessEditViewEnable;//是否是View模式
 
-         public string SelectedStepName { get; set; }
 
-         public bool CheckNumber { get; set; } = false;
 
-         private ConfigNode _configNode;
 
-         public ConfigNode ConfigNode
 
-         {
 
-             get { return _configNode; }
 
-             set { _configNode = value; this.NotifyOfPropertyChange(nameof(ConfigNode)); }
 
-         }
 
-         protected override void OnInitialize()
 
-         {
 
-             base.OnInitialize();
 
-             ConfigNode _rootNode = SystemConfigProvider.Instance.GetConfig(true);
 
-             string strHeader = "PM1.RecipeEditParameter.StepName";
 
-             ConfigNode = FindNodeByName(_rootNode, strHeader);
 
-             for (int i = 0; i < ConfigNode.Items.Count; i++)
 
-             {
 
-                 string key = String.Format("{0}.{1}", strHeader, ConfigNode.Items[i].Name);
 
-                 ConfigNode.Items[i].CurrentValue = SystemConfigProvider.Instance.GetValueByName(key);
 
-             }
 
-             for (int i = 0; i < ConfigNode.Items.Count; i++)
 
-             {
 
-                 Steps.Add(new StepInfo() { Number = ConfigNode.Items[i].Name, Name = $"{i + 1}:{ConfigNode.Items[i].CurrentValue}" });
 
-             }
 
-             if (CheckNumber)
 
-             {
 
-                 var step = Steps.FirstOrDefault(x => x.Number == SelectedStepName);
 
-                 if (step != null)
 
-                 {
 
-                     step.IsChecked = true;
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 var step = Steps.FirstOrDefault(x => x.Name == SelectedStepName);
 
-                 if (step != null)
 
-                 {
 
-                     step.IsChecked = true;
 
-                 }
 
-             }
 
-         }
 
-         private ConfigNode FindNodeByName(ConfigNode parentNode, string strName)
 
-         {
 
-             string strCates = strName.Split('.')[0];
 
-             ConfigNode node = parentNode.SubNodes.Find((x) => x.Name == strCates);
 
-             if (node == null)
 
-                 return parentNode;
 
-             else
 
-                 return FindNodeByName(node, strName.Replace(strCates + ".", ""));
 
-         }
 
-         public void Select(object para)
 
-         {
 
-             SelectedStepName = (para as RadioButton).Content.ToString();
 
-             ((Window)GetView()).DialogResult = true;
 
-         }
 
-         public void StepNameEdit(string cmdName)
 
-         {
 
-             switch (cmdName)
 
-             {
 
-                 case "Close":
 
-                     ((Window)GetView()).DialogResult = false;
 
-                     break;
 
-                 case "Save":
 
-                     ((Window)GetView()).DialogResult = true;
 
-                     break;
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |