123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- using OpenSEMI.Ctrlib.Window;
- using Prism.Regions;
- using System.Collections.Generic;
- using System.Windows;
- using Venus_Themes.CustomControls;
- using Venus_UI.Models;
- using Venus_UI.Themes.Attach;
- using Venus_Unity;
- using System.Linq;
- using System.Threading;
- namespace Venus_UI.Views
- {
- /// <summary>
- /// ShellView.xaml 的交互逻辑
- /// </summary>
- public partial class ShellView : CustomWnd
- {
- IRegionManager m_regionManager;
- IRegionNavigationService m_regionNavigationService;
- List<Menu> menus;
- public ShellView(IRegionManager regionManager, IRegionNavigationService regionNavigationService)
- {
- InitializeComponent();
- m_regionManager = regionManager;
- m_regionNavigationService = regionNavigationService;
- m_regionManager.RegisterViewWithRegion("MainRegion", typeof(Venus_MainPages.Views.OverView));
- m_regionManager.RegisterViewWithRegion("TopRegion", typeof(Venus_MainPages.Views.TopView));
-
- }
- private void CustomWnd_Loaded(object sender, RoutedEventArgs e)
- {
- menus = SerializeHelper.Instance.ReadFromJsonFile<List<Menu>>("Config/Menu.json");
- for (int i=0;i<menus.Count;i++)
- {
- var aduRadioButtonIcon = new AduRadioButtonIcon();
- if (i == 0)
- {
- aduRadioButtonIcon.IsChecked = true;
- }
- aduRadioButtonIcon.Content = this.FindResource(menus[i].ID);
- aduRadioButtonIcon.SetValue(IconElement.PathDataProperty, this.FindResource("Icon_" + menus[i].ID));
- aduRadioButtonIcon.Checked += AduRadioButtonIcon_Checked;
- Bottom_Frame.Children.Add(aduRadioButtonIcon);
- }
- }
- private void AduRadioButtonIcon_Checked(object sender, RoutedEventArgs e)
- {
- string viewName = menus.Where(x => x.Name == (sender as AduRadioButtonIcon).Content.ToString()).FirstOrDefault().ID;
- m_regionManager.RequestNavigate("MainRegion", viewName);
- }
- }
- }
|