Files
MobilePhoneGrippingCuttingT…/ProcessReportWindow.xaml
2026-04-20 11:51:33 +08:00

498 lines
25 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<Window x:Class="EmptyLoadTest.ProcessReportWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:EmptyLoadTest"
mc:Ignorable="d"
Title="过程报表系统" Height="700" Width="1000"
WindowStartupLocation="CenterScreen"
Background="#F5F7FA" Loaded="Window_Loaded">
<Window.Resources>
<!-- 标题样式 -->
<Style x:Key="MainTitleStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="28"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Foreground" Value="#2C3E50"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="Margin" Value="0,20,0,25"/>
</Style>
<!-- 副标题样式 -->
<Style x:Key="SubTitleStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="18"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Foreground" Value="#34495E"/>
<Setter Property="Margin" Value="0,0,0,15"/>
</Style>
<!-- 按钮样式 -->
<Style x:Key="ActionButtonStyle" TargetType="Button">
<Setter Property="Height" Value="40"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="15,8"/>
<Setter Property="Margin" Value="5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="border" Background="{TemplateBinding Background}"
CornerRadius="6">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background">
<Setter.Value>
<SolidColorBrush Color="#3498DB"/>
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ExportButtonStyle" TargetType="Button" BasedOn="{StaticResource ActionButtonStyle}">
<Setter Property="Background" Value="#2ECC71"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="border" Background="#2ECC71" CornerRadius="6">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="#27AE60"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="FolderButtonStyle" TargetType="Button" BasedOn="{StaticResource ActionButtonStyle}">
<Setter Property="Background" Value="#3498DB"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="border" Background="#3498DB" CornerRadius="6">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="#2980B9"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="PrintButtonStyle" TargetType="Button" BasedOn="{StaticResource ActionButtonStyle}">
<Setter Property="Background" Value="#9B59B6"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="border" Background="#9B59B6" CornerRadius="6">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="#8E44AD"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ReturnButtonStyle" TargetType="Button" BasedOn="{StaticResource ActionButtonStyle}">
<Setter Property="Background" Value="#95A5A6"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="border" Background="#95A5A6" CornerRadius="6">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="#7F8C8D"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- 卡片样式 -->
<Style x:Key="CardStyle" TargetType="Border">
<Setter Property="Background" Value="#FFFFFF"/>
<Setter Property="CornerRadius" Value="10"/>
<Setter Property="BorderBrush" Value="#E5E8E8"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="20"/>
<Setter Property="Margin" Value="15"/>
</Style>
<!-- DataGrid 样式 -->
<Style x:Key="DataGridStyle" TargetType="DataGrid">
<Setter Property="Background" Value="#FFFFFF"/>
<Setter Property="BorderBrush" Value="#E5E8E8"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="GridLinesVisibility" Value="Horizontal"/>
<Setter Property="HorizontalGridLinesBrush" Value="#ECF0F1"/>
<Setter Property="VerticalGridLinesBrush" Value="#ECF0F1"/>
<Setter Property="HeadersVisibility" Value="Column"/>
<Setter Property="CanUserAddRows" Value="False"/>
<Setter Property="CanUserDeleteRows" Value="False"/>
<Setter Property="AutoGenerateColumns" Value="False"/>
<Setter Property="IsReadOnly" Value="True"/>
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="SelectionUnit" Value="FullRow"/>
<Setter Property="RowHeight" Value="36"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Foreground" Value="#2C3E50"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
</Style>
<!-- DataGrid 列头样式 -->
<Style x:Key="DataGridColumnHeaderStyle" TargetType="DataGridColumnHeader">
<Setter Property="Background" Value="#3498DB"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="Height" Value="40"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="10,8"/>
<Setter Property="BorderBrush" Value="#2980B9"/>
<Setter Property="BorderThickness" Value="0,0,1,0"/>
</Style>
<!-- DataGrid 行样式 -->
<Style x:Key="DataGridRowStyle" TargetType="DataGridRow">
<Setter Property="Background" Value="White"/>
<Style.Triggers>
<!-- 斑马线效果 -->
<Trigger Property="AlternationIndex" Value="0">
<Setter Property="Background" Value="#FFFFFF"/>
</Trigger>
<Trigger Property="AlternationIndex" Value="1">
<Setter Property="Background" Value="#F8F9F9"/>
</Trigger>
<!-- 鼠标悬停效果 -->
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#EBF5FB"/>
</Trigger>
<!-- 选中效果 -->
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#D6EAF8"/>
<Setter Property="BorderBrush" Value="#3498DB"/>
<Setter Property="BorderThickness" Value="1"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- DataGrid 单元格样式 -->
<Style x:Key="DataGridCellStyle" TargetType="DataGridCell">
<Setter Property="BorderBrush" Value="#ECF0F1"/>
<Setter Property="BorderThickness" Value="0,0,1,1"/>
<Setter Property="Padding" Value="10,8"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="TextBlock.TextAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridCell">
<Border BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
Padding="{TemplateBinding Padding}"
SnapsToDevicePixels="True">
<ContentPresenter VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- 复选框样式 -->
<Style x:Key="CheckBoxStyle" TargetType="CheckBox">
<Setter Property="FontSize" Value="14"/>
<Setter Property="Foreground" Value="#34495E"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Margin" Value="0,5"/>
<Setter Property="Cursor" Value="Hand"/>
</Style>
<!-- 状态转换器 -->
<local:StatusToColorConverter x:Key="StatusToColorConverter"/>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- 标题区域 -->
<TextBlock Text="过程报表" Style="{StaticResource MainTitleStyle}" Grid.Row="0"/>
<!-- 主要内容区域 -->
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="300"/>
</Grid.ColumnDefinitions>
<!-- 左侧DataGrid 报表 -->
<Border Grid.Column="0" Style="{StaticResource CardStyle}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- 报表标题和操作 -->
<Grid Grid.Row="0" Margin="0,0,0,15">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="测试过程数据报表" Style="{StaticResource SubTitleStyle}"
Grid.Column="0"/>
<StackPanel Grid.Column="1" Orientation="Horizontal">
<!--<Button Content="刷新" Style="{StaticResource ExportButtonStyle}"
Width="80"/>-->
<Button Content="清空" Style="{StaticResource PrintButtonStyle}"
Width="80" Margin="5,0,0,0" Click="Button_Click_4"/>
</StackPanel>
</Grid>
<!-- DataGrid 报表 -->
<Border Grid.Row="1" Background="#FFFFFF" CornerRadius="8"
BorderBrush="#E5E8E8" BorderThickness="1"
Padding="0" Margin="0,0,0,15">
<DataGrid x:Name="ReportDataGrid"
Style="{StaticResource DataGridStyle}"
ItemsSource="{Binding ReportData}"
AlternationCount="2"
ColumnHeaderStyle="{StaticResource DataGridColumnHeaderStyle}"
RowStyle="{StaticResource DataGridRowStyle}"
CellStyle="{StaticResource DataGridCellStyle}">
<DataGrid.Columns>
<!-- 序号列 -->
<DataGridTextColumn Header="序号"
Width="80"
Binding="{Binding Index}"
IsReadOnly="True"/>
<!-- 时间列 -->
<DataGridTextColumn Header="时间"
Width="180"
Binding="{Binding Time, StringFormat='HH:mm:ss'}"
IsReadOnly="True"/>
<!-- 实时扭矩列 -->
<DataGridTextColumn Header="实时扭矩 (N.cm)"
Width="150"
Binding="{Binding Torque, StringFormat='F1'}"
IsReadOnly="True"/>
<!-- 实时转速列 -->
<DataGridTextColumn Header="实时转速 (Rad/Min)"
Width="160"
Binding="{Binding Speed}"
IsReadOnly="True"/>
</DataGrid.Columns>
</DataGrid>
</Border>
<!-- 报表统计信息 -->
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal">
<TextBlock Text="数据总数:"
Foreground="#7F8C8D"
VerticalAlignment="Center"
Margin="0,0,5,0"/>
<TextBlock Text="{Binding DataCount}"
FontWeight="Bold"
Foreground="#3498DB"
VerticalAlignment="Center"/>
<TextBlock Text=" | 最大扭矩:"
Foreground="#7F8C8D"
VerticalAlignment="Center"
Margin="15,0,5,0"/>
<TextBlock Name="maxForce"
FontWeight="Bold"
Foreground="#27AE60"
VerticalAlignment="Center"/>
<!--<TextBlock Text=" | 警告:"
Foreground="#7F8C8D"
VerticalAlignment="Center"
Margin="15,0,5,0"/>-->
<!--<TextBlock Text="{Binding WarningCount}"
FontWeight="Bold"
Foreground="#E67E22"
VerticalAlignment="Center"/>-->
<!--<TextBlock Text=" | 错误:"
Foreground="#7F8C8D"
VerticalAlignment="Center"
Margin="15,0,5,0"/>-->
<!--<TextBlock Text="{Binding ErrorCount}"
FontWeight="Bold"
Foreground="#E74C3C"
VerticalAlignment="Center"/>-->
</StackPanel>
<!--<TextBlock Grid.Column="1" Text="记录时间:"
Foreground="#7F8C8D"
VerticalAlignment="Center"
Margin="15,0,5,0"/>
<TextBlock Grid.Column="2" Text="10:00:00 - 10:15:30"
FontWeight="Bold"
Foreground="#2C3E50"
VerticalAlignment="Center"/>-->
</Grid>
</Grid>
</Border>
<!-- 中间分隔线 -->
<Rectangle Grid.Column="1" Width="1" Fill="#E5E8E8"
Margin="0,20" VerticalAlignment="Stretch"/>
<!-- 右侧:导出和操作 -->
<Border Grid.Column="2" Style="{StaticResource CardStyle}">
<StackPanel>
<TextBlock Text="报表操作" Style="{StaticResource SubTitleStyle}"/>
<!-- 导出报表区域 -->
<Border Background="#F8F9F9" CornerRadius="8"
BorderBrush="#E5E8E8" BorderThickness="1"
Padding="15" Margin="0,0,0,20">
<StackPanel>
<TextBlock Text="导出报表" FontSize="16" FontWeight="SemiBold"
Foreground="#2C3E50" Margin="0,0,0,10"/>
<Button Content="导出为Excel" Style="{StaticResource ExportButtonStyle}"
Margin="0,0,0,10" Click="Button_Click_1"/>
<Separator Background="#D5D8DC" Margin="0,0,0,10"/>
<Button Content="返回" Style="{StaticResource FolderButtonStyle}" Click="Button_Click"/>
</StackPanel>
</Border>
<!-- 打印选项 -->
<Border Background="#F8F9F9" CornerRadius="8"
BorderBrush="#E5E8E8" BorderThickness="1"
Padding="15" Margin="0,0,0,20">
<StackPanel>
<Button Content="打印" Style="{StaticResource PrintButtonStyle}" Click="Button_Click_2"/>
</StackPanel>
</Border>
<!-- 数据操作 -->
<Border Background="#F8F9F9" CornerRadius="8"
BorderBrush="#E5E8E8" BorderThickness="1"
Padding="15" Margin="0,0,0,20">
<!--<StackPanel>
<TextBlock Text="数据操作" FontSize="16" FontWeight="SemiBold"
Foreground="#2C3E50" Margin="0,0,0,10"/>
<Button Content="选择全部" Style="{StaticResource FolderButtonStyle}"
Margin="0,0,0,8"/>
<Button Content="取消选择" Style="{StaticResource FolderButtonStyle}"
Margin="0,0,0,8"/>
<Button Content="删除选中" Style="{StaticResource PrintButtonStyle}"
Margin="0,0,0,8"/>
<Button Content="导出选中" Style="{StaticResource ExportButtonStyle}"
Margin="0,0,0,8"/>
</StackPanel>-->
</Border>
<!-- 返回按钮 -->
<Button Content="返回主界面" Style="{StaticResource ReturnButtonStyle}"
Height="45" FontSize="16" Click="Button_Click_3"/>
<!-- 报表信息 -->
<!--<StackPanel Margin="0,20,0,0">
<TextBlock Text="报表信息" FontSize="14" FontWeight="SemiBold"
Foreground="#34495E" Margin="0,0,0,5"/>
<TextBlock Text="生成时间2024-01-01 10:15:30"
FontSize="12" Foreground="#7F8C8D"/>
<TextBlock Text="生成用户Admin"
FontSize="12" Foreground="#7F8C8D"/>
<TextBlock Text="报表版本v1.0"
FontSize="12" Foreground="#7F8C8D"/>
</StackPanel>-->
</StackPanel>
</Border>
</Grid>
<!-- 底部状态栏 -->
<Border Grid.Row="2" Background="#2C3E50" Padding="15,10">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal">
<Border Background="#3498DB" CornerRadius="4" Padding="8,4"
VerticalAlignment="Center" Margin="0,0,15,0">
<TextBlock Text="过程报表" Foreground="White" FontWeight="SemiBold"/>
</Border>
<!--<TextBlock Text="已加载数据共5条记录" Foreground="#ECF0F1"
VerticalAlignment="Center" FontSize="14"/>-->
</StackPanel>
<StackPanel Grid.Column="1" Orientation="Horizontal">
<TextBlock Text="状态:" Foreground="#ECF0F1"
VerticalAlignment="Center" Margin="0,0,10,0"/>
<Border Background="#27AE60" CornerRadius="4"
Padding="8,4" VerticalAlignment="Center">
<TextBlock Text="就绪" Foreground="White" FontWeight="SemiBold"/>
</Border>
<TextBlock Text=" | " Foreground="#7F8C8D"
VerticalAlignment="Center" Margin="10,0"/>
<TextBlock Name="lasttime" Text="最后刷新10:15:30" Foreground="#BDC3C7"
VerticalAlignment="Center"/>
</StackPanel>
</Grid>
</Border>
</Grid>
</Window>