| | |
| | | using HMI.Core.Api; |
| | | using Microsoft.DwayneNeed.Interop; |
| | | using Panuon.WPF.UI; |
| | | using System.Collections.Generic; |
| | | using System.Collections.ObjectModel; |
| | | using System.ComponentModel; |
| | | using System.Runtime.CompilerServices; |
| | |
| | | } |
| | | } |
| | | |
| | | private Dictionary<PluginInfo, PluginInfo> selectedCache = new Dictionary<PluginInfo, PluginInfo>(); |
| | | |
| | | private ObservableCollection<PluginInfo> _SubMenuItems; |
| | | |
| | |
| | | { |
| | | var data = (PluginInfo)e.AddedItems[0]; |
| | | SubMenuItems = data?.Children; |
| | | if (selectedCache.ContainsKey(data)) |
| | | { |
| | | SelectedSubMenu = selectedCache[data]; |
| | | } |
| | | else if (SubMenuItems.Count > 0) |
| | | { |
| | | SelectedSubMenu = SubMenuItems[0]; |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void SwithMenu(PluginInfo menu) |
| | | { |
| | | |
| | | } |
| | | |
| | | |
| | | private void SubMenu_SelectionChanged(object sender, SelectionChangedEventArgs e) |
| | | { |
| | | if (e.AddedItems?.Count > 0) |
| | | { |
| | | var data = (PluginInfo)e.AddedItems[0]; |
| | | if (SelectedMenu != null) |
| | | { |
| | | selectedCache[SelectedMenu] = data; |
| | | } |
| | | |
| | | var content = data.Content; |
| | | var last = page.Child; |
| | | PluginPackage.Get(last)?.DeActive(); |
| | |
| | | UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged |
| | | }; |
| | | winFormHolder.SetBinding(WinFormHolder.MaskVisiableProperty, binding); |
| | | if (MenuItems != null && MenuItems.Count > 0) |
| | | { |
| | | SelectedMenu = MenuItems[0]; |
| | | } |
| | | Loaded -= UserControl_Loaded; |
| | | } |
| | | } |
| | | } |