using FLY.Thick.Base.Client; using FLY.Thick.Base.Common; using FLY.Thick.Base.IService; using MultiLayout.UiModule; using FObjBase; using LiveCharts; using Misc; using System; using System.Collections.Generic; using System.ComponentModel; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using FLY.Thick.Base.UI; using Unity; namespace FLY.Thick.Base.UI.UiModule { /// <summary> /// FixGraph.xaml 的交互逻辑 /// </summary> public partial class FixGraph : UserControl { FixGraphVm viewModel; FixGraphItemParam graphparam; public FixGraph() { InitializeComponent(); } [InjectionMethod] public void Init(int id, IUnityContainer container, IFixService fixService, ITDGageService gageService) { //查找参数 graphparam = FixGraphParams.Current.Items.Find(p => p.ID == id); if (graphparam == null) { graphparam = new FixGraphItemParam() { ID = id }; FixGraphParams.Current.Items.Add(graphparam); FixGraphParams.Current.Save(); } //获取设备 viewModel = new FixGraphVm(); viewModel.Init(fixService, gageService.DynArea, graphparam); this.DataContext = viewModel; } private void Button_info_click(object sender, RoutedEventArgs e) { bool isPaused = viewModel.IsPaused; if (!isPaused) viewModel.IsPaused = true; FixGraphConfig w = new FixGraphConfig(); w.Init(graphparam); w.Owner = FLY.ControlLibrary.COMMON.GetWindow(this); w.ShowDialog(); viewModel.IsPaused = isPaused; } private void button_pause_Click(object sender, RoutedEventArgs e) { viewModel.IsPaused = !viewModel.IsPaused; } private void button_save_Click(object sender, RoutedEventArgs e) { viewModel.PreSave(); WdSaveDatas w = new WdSaveDatas(); w.Init(viewModel); w.ShowDialog(); } private void button_analyze_Click(object sender, RoutedEventArgs e) { viewModel.GetDatas(out double intervalms, out List<double> datas); PgFixAnalyze p = new PgFixAnalyze(); p.Init(intervalms, datas); MultiLayout.FlyLayoutManager.NavigationService.Navigate(p); } } }