更新
This commit is contained in:
@@ -790,7 +790,8 @@
|
||||
BorderThickness="1"
|
||||
CornerRadius="10"
|
||||
Padding="6">
|
||||
<lvc:CartesianChart Series="{Binding ForceSeries}"
|
||||
<lvc:CartesianChart x:Name="RealtimeForceChart"
|
||||
Series="{Binding ForceSeries}"
|
||||
XAxes="{Binding ForceXAxes}"
|
||||
YAxes="{Binding ForceYAxes}"
|
||||
Sections="{Binding ForceSections}"
|
||||
@@ -799,7 +800,9 @@
|
||||
TooltipPosition="Hidden"
|
||||
AnimationsSpeed="0:0:0"
|
||||
EasingFunction="{x:Null}"
|
||||
DrawMarginFrame="{x:Null}" />
|
||||
DrawMarginFrame="{x:Null}"
|
||||
Loaded="RealtimeForceChart_Loaded"
|
||||
SizeChanged="RealtimeForceChart_SizeChanged" />
|
||||
</Border>
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Threading;
|
||||
using COFTester.ViewModels;
|
||||
|
||||
namespace COFTester;
|
||||
@@ -12,6 +13,7 @@ public partial class MainWindow : Window
|
||||
private const double CollapsedSidebarWidth = 118;
|
||||
private readonly MainViewModel _viewModel = new();
|
||||
private bool _isSidebarCollapsed;
|
||||
private bool _isRealtimeChartLayoutRefreshQueued;
|
||||
|
||||
public MainWindow()
|
||||
{
|
||||
@@ -41,6 +43,21 @@ public partial class MainWindow : Window
|
||||
MainWorkspaceTabs.SelectedIndex = 1;
|
||||
}
|
||||
|
||||
private void RealtimeForceChart_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
QueueRealtimeChartLayoutRefresh();
|
||||
}
|
||||
|
||||
private void RealtimeForceChart_SizeChanged(object sender, SizeChangedEventArgs e)
|
||||
{
|
||||
if (e.NewSize.Width <= 0 || e.NewSize.Height <= 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
QueueRealtimeChartLayoutRefresh();
|
||||
}
|
||||
|
||||
private void TableMotionButton_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
if (sender is not Button button || button.Tag is not string direction)
|
||||
@@ -86,5 +103,31 @@ public partial class MainWindow : Window
|
||||
SidebarDetails.Visibility = collapsed ? Visibility.Collapsed : Visibility.Visible;
|
||||
SidebarCollapsedRail.Visibility = collapsed ? Visibility.Visible : Visibility.Collapsed;
|
||||
SidebarHost.Padding = collapsed ? new Thickness(12) : new Thickness(18, 16, 14, 16);
|
||||
QueueRealtimeChartLayoutRefresh();
|
||||
}
|
||||
|
||||
private void QueueRealtimeChartLayoutRefresh()
|
||||
{
|
||||
if (_isRealtimeChartLayoutRefreshQueued)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
_isRealtimeChartLayoutRefreshQueued = true;
|
||||
Dispatcher.BeginInvoke(RefreshRealtimeChartLayout, DispatcherPriority.ContextIdle);
|
||||
}
|
||||
|
||||
private void RefreshRealtimeChartLayout()
|
||||
{
|
||||
_isRealtimeChartLayoutRefreshQueued = false;
|
||||
|
||||
if (RealtimeForceChart.ActualWidth <= 0 || RealtimeForceChart.ActualHeight <= 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
RealtimeForceChart.InvalidateMeasure();
|
||||
RealtimeForceChart.InvalidateArrange();
|
||||
RealtimeForceChart.UpdateLayout();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user