| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | using Prism.Commands;using Prism.Mvvm;using System;using System.Collections.Generic;using System.Collections.ObjectModel;using System.ComponentModel;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Controls;using System.Windows.Data;using Venus_Core;using Venus_Unity;using Menu = Venus_MainPages.Role.Menu;namespace Venus_MainPages.ViewModels{    internal class RoleViewModel : BindableBase    {        #region 私有属性        List<VenusMenu> m_venusMenus = new List<VenusMenu>();        ObservableCollection<Menu> m_Menus=new ObservableCollection<Menu>();        ICollectionView vm;        #endregion        #region 依赖项属性        public List<VenusMenu> VenusMenus        {            get { return m_venusMenus; }            set            {                SetProperty(ref m_venusMenus, value);            }        }        public ObservableCollection<Menu> Menus        {            get { return m_Menus; }            set            {                SetProperty(ref m_Menus, value);            }        }        #endregion        private DelegateCommand _SaveCommand;        public DelegateCommand SaveCommand =>            _SaveCommand ?? (_SaveCommand = new DelegateCommand(OnSave));        private DelegateCommand<object> _CheckedCommand;        public DelegateCommand<object> CheckedCommand =>            _CheckedCommand ?? (_CheckedCommand= new DelegateCommand<object>(OnChecked));        public RoleViewModel()        {            VenusMenus = SerializeHelper.Instance.ReadFromJsonFile<List<VenusMenu>>("Config/UIMenu.json");            Menus.Add(new Menu(1, "Operation", "OverView"));            Menus.Add(new Menu(1, "Operation", "Sequence"));            Menus.Add(new Menu(1, "Operation", "FA"));            Menus.Add(new Menu(1, "PMA", "Operation"));            Menus.Add(new Menu(1, "PMA", "IO"));            Menus.Add(new Menu(1, "PMA", "Recipe"));            Menus.Add(new Menu(1, "PMA", "Gas&Leak Check"));            Menus.Add(new Menu(1, "PMA", "MFCVerification"));            Menus.Add(new Menu(1, "PMA", "PartialPressure"));            Menus.Add(new Menu(1, "PMA", "VATPerformance"));            Menus.Add(new Menu(1, "PMB", "Operation"));            Menus.Add(new Menu(1, "PMB", "IO"));            Menus.Add(new Menu(1, "PMB", "Recipe"));            Menus.Add(new Menu(1, "PMB", "Gas&Leak Check"));            Menus.Add(new Menu(1, "PMB", "MFCVerification"));            Menus.Add(new Menu(1, "PMB", "PartialPressure"));            Menus.Add(new Menu(1, "PMB", "VATPerformance"));            Menus.Add(new Menu(1, "PMC", "Operation"));            Menus.Add(new Menu(1, "PMC", "IO"));            Menus.Add(new Menu(1, "PMC", "Recipe"));            Menus.Add(new Menu(1, "PMC", "Gas&Leak Check"));            Menus.Add(new Menu(1, "PMC", "MFCVerification"));            Menus.Add(new Menu(1, "PMC", "PartialPressure"));            Menus.Add(new Menu(1, "PMC", "VATPerformance"));            Menus.Add(new Menu(1, "PMD", "Operation"));            Menus.Add(new Menu(1, "PMD", "IO"));            Menus.Add(new Menu(1, "PMD", "Recipe"));            Menus.Add(new Menu(1, "PMD", "Gas&Leak Check"));            Menus.Add(new Menu(1, "PMD", "MFCVerification"));            Menus.Add(new Menu(1, "PMD", "PartialPressure"));            Menus.Add(new Menu(1, "PMD", "VATPerformance"));            vm = CollectionViewSource.GetDefaultView(Menus);            vm.GroupDescriptions.Add(new PropertyGroupDescription("FirstMenu"));        }        private void OnSave()        {            SerializeHelper.Instance.WriteToJsonFile<List<VenusMenu>>(VenusMenus, "Config/UIMenu.json");        }        private void OnChecked(object obj)        {                 }    }}
 |