| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 | 
							- using Aitex.Core.RT.Log;
 
- using SciChart.Charting.ChartModifiers;
 
- using SciChart.Charting.Visuals.Annotations;
 
- using SciChart.Data.Model;
 
- using System;
 
- using System.Collections.Generic;
 
- 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;
 
- namespace MECF.Framework.UI.Client.CenterViews.DataLogs.ProcessHistory
 
- {
 
-     /// <summary>
 
-     /// ProcessDetailView.xaml 的交互逻辑
 
-     /// </summary>
 
-     public partial class ProcessDetailView : UserControl
 
-     {
 
-         public ProcessDetailView()
 
-         {
 
-             InitializeComponent();          
 
-         }
 
-         private void OnAnnotationCreated(object sender, AnnotationCreationArgs e)
 
-         {
 
-             if (e.NewAnnotation is LineArrowAnnotation newAnnotation)
 
-             {
 
-                 try
 
-                 {
 
-                     if (e.NewAnnotation.ParentSurface != null)
 
-                     {
 
-                         double x1 = 0, y1 = 0, x2 = 0, y2 = 0, temp = 0;
 
-                         if (newAnnotation.X1 is Double xx1) x1 = xx1;
 
-                         if (newAnnotation.X2 is Double xx2) x2 = xx2;
 
-                         if (newAnnotation.Y1 is Double yy1) y1 = yy1;
 
-                         if (newAnnotation.Y2 is Double yy2) y2 = yy2;
 
-                         if (x1 > x2) { temp = x1; x1 = x2; x2 = temp; }
 
-                         e.NewAnnotation.ParentSurface.XAxis.VisibleRange = new DoubleRange()
 
-                         {
 
-                             Min = x1,
 
-                             Max = x2
 
-                         };
 
-                         LOG.Info($"LineArrowAnnotation x1[{x1},x2[{x2}]]");
 
-                         if (y1 > y2) { temp = y1; y1 = y2; y2 = temp; }
 
-                         e.NewAnnotation.ParentSurface.YAxis.VisibleRange = new DoubleRange()
 
-                         {
 
-                             Min = y1,
 
-                             Max = y2
 
-                         };
 
-                         LOG.Info($"LineArrowAnnotation y1[{y1},y2[{y2}]]");
 
-                     }
 
-                     e.NewAnnotation.ParentSurface.Annotations.Clear();
 
-                     ZoomByLine.IsChecked = false;
 
-                 }
 
-                 catch (Exception ex)
 
-                 {
 
-                     LOG.Info($"LineArrowAnnotation:{ex.StackTrace}-{ex.Message}");
 
-                 }
 
-             }
 
-         }
 
-         private void RadioButton_Checked(object sender, RoutedEventArgs e)
 
-         {
 
-             if(sender is RadioButton radio)
 
-             {
 
-                 switch (radio.Name)
 
-                 {
 
-                     case "ShowVerticalLine":
 
-                         if (sliceModifier.VerticalLines == null || sliceModifier.VerticalLines.Count == 0)
 
-                         {
 
-                             sliceModifier.VerticalLines.Add(new VerticalLineAnnotation() { X1 = 0 });
 
-                             sciChart.MouseLeftButtonUp += sciChart_MouseLeftButtonUp;
 
-                         }
 
-                         break;
 
-                     case "DeleteVertical":
 
-                         sliceModifier.VerticalLines.Clear();
 
-                         break;
 
-                 }
 
-             }          
 
-            e.Handled = true;
 
-         }  
 
-         private void ShowVetical_UnChecked(object sender, RoutedEventArgs e)
 
-         {
 
-             HoldVetical.IsChecked = false;
 
-             sciChart.MouseLeftButtonUp -= sciChart_MouseLeftButtonUp;
 
-             e.Handled = true;
 
-         }
 
-         int ClickCount = 0;
 
-         private void Double_Click(object sender, RoutedEventArgs e)
 
-         {
 
-             var t = sender as RadioButton;
 
-             ClickCount++;
 
-             if(ClickCount%2==0) t.IsChecked = false;
 
-             if(t.IsChecked==true)
 
-             {
 
-                 Grid.SetRowSpan(sciChart, 1);
 
-                 syncChart.Visibility = Visibility.Visible;
 
-                 doubleParameterTree.Visibility = Visibility.Visible;
 
-                 treeTitle.Visibility = Visibility.Visible;
 
-                 Grid.SetRowSpan(ParameterTreeView, 1);   
 
-             }
 
-             else
 
-             {
 
-                 syncChart.Visibility = Visibility.Collapsed;
 
-                 Grid.SetRowSpan(sciChart, 2);
 
-                 treeTitle.Visibility= Visibility.Collapsed;
 
-                 doubleParameterTree.Visibility = Visibility.Collapsed;
 
-                 Grid.SetRowSpan(ParameterTreeView, 3);       
 
-             }
 
-         }
 
-         private void sciChart_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 
-         {
 
-             if (ShowVerticalLine.IsChecked == true && HoldVetical.IsChecked == false)
 
-             {
 
-                 var vertical = sliceModifier.VerticalLines?.FirstOrDefault();
 
-                 if (vertical != null) vertical.X1 = rolloverModifier.SeriesData.SeriesInfo.FirstOrDefault().XValue;
 
-             }
 
-             e.Handled = true;
 
-         }
 
-       
 
-     }
 
- }
 
 
  |