2026-04-18 19:00:34 +08:00
|
|
|
|
<UserControl x:Class="ASTM_D7896_Tester.Views.D7896View"
|
|
|
|
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
|
|
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
2026-05-15 10:59:24 +08:00
|
|
|
|
xmlns:oxy="http://oxyplot.org/wpf"
|
2026-04-18 19:00:34 +08:00
|
|
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
|
|
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
2026-06-09 14:54:14 +08:00
|
|
|
|
xmlns:local="clr-namespace:ASTM_D7896_Tester.Views"
|
2026-04-18 19:00:34 +08:00
|
|
|
|
mc:Ignorable="d"
|
2026-06-09 14:54:14 +08:00
|
|
|
|
xmlns:converters="clr-namespace:ASTM_D7896_Tester.Converters"
|
2026-05-26 19:37:04 +08:00
|
|
|
|
d:DesignHeight="768" d:DesignWidth="1024" Loaded="UserControl_Loaded">
|
2026-04-18 19:00:34 +08:00
|
|
|
|
|
|
|
|
|
|
<UserControl.Resources>
|
|
|
|
|
|
<!-- 全局字体 -->
|
|
|
|
|
|
<Style TargetType="TextBlock">
|
|
|
|
|
|
<Setter Property="FontFamily" Value="Segoe UI"/>
|
|
|
|
|
|
<Setter Property="FontSize" Value="13"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
<Style TargetType="TextBox">
|
|
|
|
|
|
<Setter Property="FontFamily" Value="Segoe UI"/>
|
|
|
|
|
|
<Setter Property="FontSize" Value="13"/>
|
|
|
|
|
|
<Setter Property="BorderBrush" Value="#CCCCCC"/>
|
|
|
|
|
|
<Setter Property="BorderThickness" Value="1"/>
|
|
|
|
|
|
<Setter Property="Padding" Value="4,2"/>
|
|
|
|
|
|
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
<Style TargetType="Button">
|
|
|
|
|
|
<Setter Property="FontFamily" Value="Segoe UI"/>
|
|
|
|
|
|
<Setter Property="FontSize" Value="13"/>
|
|
|
|
|
|
<Setter Property="FontWeight" Value="SemiBold"/>
|
|
|
|
|
|
<Setter Property="Background">
|
|
|
|
|
|
<Setter.Value>
|
|
|
|
|
|
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
|
|
|
|
|
|
<GradientStop Color="#F0F0F0" Offset="0"/>
|
|
|
|
|
|
<GradientStop Color="#E0E0E0" Offset="1"/>
|
|
|
|
|
|
</LinearGradientBrush>
|
|
|
|
|
|
</Setter.Value>
|
|
|
|
|
|
</Setter>
|
|
|
|
|
|
<Setter Property="BorderBrush" Value="#ADADAD"/>
|
|
|
|
|
|
<Setter Property="BorderThickness" Value="1"/>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<Setter Property="Padding" Value="8,4"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
<Setter Property="Cursor" Value="Hand"/>
|
|
|
|
|
|
<Style.Triggers>
|
|
|
|
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|
|
|
|
|
<Setter Property="Background">
|
|
|
|
|
|
<Setter.Value>
|
|
|
|
|
|
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
|
|
|
|
|
|
<GradientStop Color="#E6F2FF" Offset="0"/>
|
|
|
|
|
|
<GradientStop Color="#D0E4F7" Offset="1"/>
|
|
|
|
|
|
</LinearGradientBrush>
|
|
|
|
|
|
</Setter.Value>
|
|
|
|
|
|
</Setter>
|
|
|
|
|
|
<Setter Property="BorderBrush" Value="#7CA4C7"/>
|
|
|
|
|
|
</Trigger>
|
|
|
|
|
|
<Trigger Property="IsPressed" Value="True">
|
|
|
|
|
|
<Setter Property="Background">
|
|
|
|
|
|
<Setter.Value>
|
|
|
|
|
|
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
|
|
|
|
|
|
<GradientStop Color="#C0D9F0" Offset="0"/>
|
|
|
|
|
|
<GradientStop Color="#A8C4E0" Offset="1"/>
|
|
|
|
|
|
</LinearGradientBrush>
|
|
|
|
|
|
</Setter.Value>
|
|
|
|
|
|
</Setter>
|
|
|
|
|
|
</Trigger>
|
|
|
|
|
|
</Style.Triggers>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 卡片阴影 -->
|
|
|
|
|
|
<DropShadowEffect x:Key="CardShadow" BlurRadius="5" ShadowDepth="1" Opacity="0.1" Color="Gray"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 主按钮绿色渐变 -->
|
2026-04-18 19:00:34 +08:00
|
|
|
|
<LinearGradientBrush x:Key="PrimaryButtonBrush" EndPoint="0,1" StartPoint="0,0">
|
|
|
|
|
|
<GradientStop Color="#4CAF50" Offset="0"/>
|
|
|
|
|
|
<GradientStop Color="#388E3C" Offset="1"/>
|
|
|
|
|
|
</LinearGradientBrush>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 数据表格样式 -->
|
|
|
|
|
|
<Style TargetType="DataGrid">
|
|
|
|
|
|
<Setter Property="FontFamily" Value="Segoe UI"/>
|
|
|
|
|
|
<Setter Property="FontSize" Value="12"/>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<Setter Property="RowHeight" Value="26"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
<Setter Property="HeadersVisibility" Value="Column"/>
|
|
|
|
|
|
<Setter Property="GridLinesVisibility" Value="Horizontal"/>
|
|
|
|
|
|
<Setter Property="BorderBrush" Value="#E0E0E0"/>
|
|
|
|
|
|
<Setter Property="BorderThickness" Value="1"/>
|
|
|
|
|
|
<Setter Property="AlternatingRowBackground" Value="#F9F9F9"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
<Style TargetType="DataGridColumnHeader">
|
|
|
|
|
|
<Setter Property="Background">
|
|
|
|
|
|
<Setter.Value>
|
|
|
|
|
|
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
|
|
|
|
|
|
<GradientStop Color="#F5F5F5" Offset="0"/>
|
|
|
|
|
|
<GradientStop Color="#E8E8E8" Offset="1"/>
|
|
|
|
|
|
</LinearGradientBrush>
|
|
|
|
|
|
</Setter.Value>
|
|
|
|
|
|
</Setter>
|
|
|
|
|
|
<Setter Property="BorderBrush" Value="#D0D0D0"/>
|
|
|
|
|
|
<Setter Property="BorderThickness" Value="0,0,1,1"/>
|
|
|
|
|
|
<Setter Property="Foreground" Value="#333333"/>
|
|
|
|
|
|
<Setter Property="FontWeight" Value="SemiBold"/>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<Setter Property="Height" Value="28"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 逆布尔转换器(请确保已在 App.xaml 或本资源中定义) -->
|
|
|
|
|
|
<converters:InverseBooleanConverter x:Key="InverseBooleanConverter"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
</UserControl.Resources>
|
|
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 去掉滚动条,使用 Grid 直接布局,紧凑边距 -->
|
|
|
|
|
|
<Grid Background="#F2F2F2" Margin="5">
|
|
|
|
|
|
<Grid.RowDefinitions>
|
|
|
|
|
|
<RowDefinition Height="Auto"/>
|
2026-06-10 16:38:04 +08:00
|
|
|
|
<!-- 样品信息 -->
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<RowDefinition Height="Auto"/>
|
|
|
|
|
|
<!-- 仪表盘 -->
|
|
|
|
|
|
<RowDefinition Height="Auto"/>
|
|
|
|
|
|
<!-- 体积/密度/加压 -->
|
|
|
|
|
|
<RowDefinition Height="Auto"/>
|
2026-06-10 16:38:04 +08:00
|
|
|
|
<!-- 曲线图(固定高度380) -->
|
|
|
|
|
|
<RowDefinition Height="Auto"/>
|
|
|
|
|
|
<!-- 数据表格(占满剩余高度) -->
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<RowDefinition Height="Auto"/>
|
|
|
|
|
|
<!-- 平均值+按钮 -->
|
|
|
|
|
|
</Grid.RowDefinitions>
|
2026-05-15 10:59:24 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 1. 样品信息 + 复选框 -->
|
|
|
|
|
|
<Border Grid.Row="0" Background="White" CornerRadius="4" Padding="8" Margin="0,0,0,4" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<StackPanel>
|
|
|
|
|
|
<WrapPanel Margin="0,0,0,5">
|
|
|
|
|
|
<TextBlock Text="样品ID:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="0,0,8,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding SampleId}" Width="120" Margin="0,0,15,0"/>
|
|
|
|
|
|
<TextBlock Text="测试温度(℃):" VerticalAlignment="Center" FontWeight="SemiBold" Margin="0,0,8,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding TestTemperature}" Width="70" IsReadOnly="True" Background="#F0F8FF" Margin="0,0,15,0"/>
|
|
|
|
|
|
<TextBlock Text="日期:" VerticalAlignment="Center" FontWeight="SemiBold" Margin="0,0,8,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding TestDateTime}" Width="140" IsReadOnly="True" Background="#F0F8FF"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
</WrapPanel>
|
|
|
|
|
|
<WrapPanel>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<CheckBox IsChecked="{Binding IsCleanConfirmed}" Content="采样池清洁 (7.1)" Margin="0,0,12,0"/>
|
|
|
|
|
|
<CheckBox IsChecked="{Binding BubbleRemoved}" Content="气泡清除 (7.6)" Margin="0,0,12,0"/>
|
|
|
|
|
|
<CheckBox IsChecked="{Binding PlatinumCompatible}" Content="铂兼容性 (1.4)" Margin="0,0,12,0"/>
|
|
|
|
|
|
<CheckBox IsChecked="{Binding AmbientCalibrated}" Content="采样池温度校准 (8.1)" Margin="0,0,15,0"/>
|
|
|
|
|
|
<TextBlock Text="状态:" VerticalAlignment="Center" Margin="10,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding StatusMessage}" Width="180" IsReadOnly="True" Background="#FFF7E6"/>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
</WrapPanel>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
2026-06-05 19:53:52 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 2. 核心参数仪表盘 -->
|
|
|
|
|
|
<Border Grid.Row="1" Background="White" CornerRadius="4" Padding="6" Margin="0,4" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<WrapPanel>
|
|
|
|
|
|
<Border Background="#E8F0FE" Padding="5" CornerRadius="4" Margin="0,0,10,0">
|
|
|
|
|
|
<StackPanel Orientation="Horizontal">
|
|
|
|
|
|
<TextBlock Text="🌡️ 样品温度:" FontWeight="SemiBold" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding CurrentTestTemperature, StringFormat=F2}" Width="55" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="℃" Margin="3,0,0,0"/>
|
2026-05-15 21:10:42 +08:00
|
|
|
|
</StackPanel>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
</Border>
|
|
|
|
|
|
<Border Background="#E8F0FE" Padding="5" CornerRadius="4" Margin="0,0,10,0">
|
|
|
|
|
|
<StackPanel Orientation="Horizontal">
|
|
|
|
|
|
<TextBlock Text="⏲️ 压力:" FontWeight="SemiBold" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding ChamberPressure, StringFormat=F2}" Width="55" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="kPa" Margin="3,0,0,0"/>
|
|
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
|
|
|
|
|
<Border Background="#E8F0FE" Padding="5" CornerRadius="4" Margin="0,0,10,0">
|
|
|
|
|
|
<StackPanel Orientation="Horizontal">
|
|
|
|
|
|
<TextBlock Text="⚡ 电阻电压:" FontWeight="SemiBold" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding StandardResistorVoltage, StringFormat=F10}" Width="110" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="V" Margin="3,0,0,0"/>
|
|
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
|
|
|
|
|
<Border Background="#E8F0FE" Padding="5" CornerRadius="4" Margin="0,0,10,0">
|
|
|
|
|
|
<StackPanel Orientation="Horizontal">
|
|
|
|
|
|
<TextBlock Text="⚡ 铂丝电压:" FontWeight="SemiBold" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding PlatinumVoltage, StringFormat=F4}" Width="65" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="V" Margin="3,0,0,0"/>
|
|
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
|
|
|
|
|
<Border Background="#E8F0FE" Padding="5" CornerRadius="4" Margin="0,0,10,0">
|
|
|
|
|
|
<StackPanel Orientation="Horizontal">
|
|
|
|
|
|
<TextBlock Text="🔌 铂丝电阻:" FontWeight="SemiBold" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding PlatinumResistance, StringFormat=F4}" Width="65" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="Ω" Margin="3,0,0,0"/>
|
|
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
|
|
|
|
|
</WrapPanel>
|
|
|
|
|
|
</Border>
|
2026-05-20 13:49:45 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 3. 样品体积 + 密度 + 加压设置 -->
|
|
|
|
|
|
<Border Grid.Row="2" Background="White" CornerRadius="4" Padding="6" Margin="0,4" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<WrapPanel>
|
|
|
|
|
|
<TextBlock Text="样品体积 (mL):" VerticalAlignment="Center" Width="95"/>
|
|
|
|
|
|
<TextBox Text="{Binding SampleVolume}" Width="60" Margin="0,0,20,0"/>
|
|
|
|
|
|
<TextBlock Text="密度 (kg/m³):" VerticalAlignment="Center" Width="95"/>
|
|
|
|
|
|
<TextBox Text="{Binding SampleDensity}" Width="80" Margin="0,0,20,0" ToolTip="输入样品密度,用于计算比热容"/>
|
|
|
|
|
|
<CheckBox IsChecked="{Binding UsePressure}" Content="加压测试" VerticalAlignment="Center" Margin="0,0,12,0"/>
|
|
|
|
|
|
<TextBlock Text="压力 (kPa):" VerticalAlignment="Center" Margin="0,0,5,0"/>
|
|
|
|
|
|
<TextBox Text="{Binding PressureValue}" Width="60" IsEnabled="{Binding UsePressure}" Margin="0,0,15,0"/>
|
|
|
|
|
|
<TextBlock Text="(蒸气压>33.8kPa时需加压)" Foreground="Gray" VerticalAlignment="Center"/>
|
|
|
|
|
|
</WrapPanel>
|
|
|
|
|
|
</Border>
|
2026-05-20 13:49:45 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<!-- 4. 温升曲线图(加高,使用 * 行高) -->
|
|
|
|
|
|
<Border Grid.Row="3" Background="White" CornerRadius="4" Padding="6" Margin="0,4" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<StackPanel>
|
|
|
|
|
|
<TextBlock Text="{Binding CurveTitle}" FontWeight="Bold" FontSize="13" Margin="0,0,0,3" Foreground="#1E4F7A"/>
|
|
|
|
|
|
<!-- 将高度从350提升到380,并让控件随网格拉伸 -->
|
2026-06-10 16:38:04 +08:00
|
|
|
|
<oxy:PlotView Model="{Binding TemperatureCurveModel}" Height="220"/>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
2026-05-20 13:49:45 +08:00
|
|
|
|
|
2026-06-10 16:38:04 +08:00
|
|
|
|
<!-- 5. 测量数据表格(占据剩余高度,带滚动条,最小高度保证可见) -->
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<Border Grid.Row="4" Background="White" CornerRadius="4" Padding="6" Margin="0,4" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<DataGrid ItemsSource="{Binding Measurements}" AutoGenerateColumns="False"
|
2026-06-10 16:38:04 +08:00
|
|
|
|
CanUserAddRows="False" IsReadOnly="True"
|
|
|
|
|
|
HeadersVisibility="Column" GridLinesVisibility="Horizontal"
|
|
|
|
|
|
RowHeight="24"
|
|
|
|
|
|
Height="120"
|
|
|
|
|
|
VerticalAlignment="Stretch"
|
|
|
|
|
|
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
|
|
|
|
|
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<DataGrid.Columns>
|
|
|
|
|
|
<DataGridTextColumn Header="序号" Binding="{Binding Index}" Width="60">
|
|
|
|
|
|
<DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
<Style TargetType="TextBlock">
|
|
|
|
|
|
<Setter Property="HorizontalAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
</DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
</DataGridTextColumn>
|
|
|
|
|
|
<DataGridTextColumn Header="热导率 (W/m·K)" Binding="{Binding ThermalConductivity, StringFormat=F5}" Width="*">
|
|
|
|
|
|
<DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
<Style TargetType="TextBlock">
|
|
|
|
|
|
<Setter Property="HorizontalAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
</DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
</DataGridTextColumn>
|
|
|
|
|
|
<DataGridTextColumn Header="热扩散率 (m²/s)" Binding="{Binding ThermalDiffusivity, StringFormat=F10}" Width="*">
|
|
|
|
|
|
<DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
<Style TargetType="TextBlock">
|
|
|
|
|
|
<Setter Property="HorizontalAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
</DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
</DataGridTextColumn>
|
|
|
|
|
|
<DataGridTextColumn Header="体积热容 (kJ/m³·K)" Binding="{Binding VolumetricHeatCapacity, StringFormat=F2}" Width="*">
|
|
|
|
|
|
<DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
<Style TargetType="TextBlock">
|
|
|
|
|
|
<Setter Property="HorizontalAlignment" Value="Center"/>
|
|
|
|
|
|
</Style>
|
|
|
|
|
|
</DataGridTextColumn.ElementStyle>
|
|
|
|
|
|
</DataGridTextColumn>
|
|
|
|
|
|
</DataGrid.Columns>
|
|
|
|
|
|
</DataGrid>
|
|
|
|
|
|
</Border>
|
2026-05-20 13:49:45 +08:00
|
|
|
|
|
2026-06-10 16:38:04 +08:00
|
|
|
|
|
|
|
|
|
|
<!-- 6. 平均值 + 按钮(水平排列并放大) -->
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<Border Grid.Row="5" Background="#E8F0FE" CornerRadius="4" Padding="8" Margin="0,4,0,0" Effect="{StaticResource CardShadow}">
|
|
|
|
|
|
<StackPanel>
|
2026-06-10 16:38:04 +08:00
|
|
|
|
<!-- 平均值显示行(保持不变) -->
|
|
|
|
|
|
<WrapPanel Margin="0,0,0,8">
|
2026-06-09 14:54:14 +08:00
|
|
|
|
<TextBlock Text="平均热导率:" Width="90" FontWeight="SemiBold"/>
|
|
|
|
|
|
<TextBox Text="{Binding AverageThermalConductivity, StringFormat=F5}" Width="90" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="W/m·K" Margin="5,0,25,0"/>
|
|
|
|
|
|
<TextBlock Text="平均热扩散率:" Width="110" FontWeight="SemiBold"/>
|
|
|
|
|
|
<TextBox Text="{Binding AverageThermalDiffusivity, StringFormat=F10}" Width="100" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="m²/s" Margin="5,0,25,0"/>
|
|
|
|
|
|
<TextBlock Text="平均体积热容:" Width="100" FontWeight="SemiBold"/>
|
|
|
|
|
|
<TextBox Text="{Binding AverageVolumetricHeatCapacity, StringFormat=F2}" Width="90" IsReadOnly="True"/>
|
|
|
|
|
|
<TextBlock Text="kJ/m³·K" Margin="5,0,0,0"/>
|
|
|
|
|
|
</WrapPanel>
|
2026-06-10 16:38:04 +08:00
|
|
|
|
|
|
|
|
|
|
<!-- 按钮区域:一排,放大按钮 -->
|
|
|
|
|
|
<WrapPanel HorizontalAlignment="Center" Margin="0,4">
|
|
|
|
|
|
<Button Content="压力校准" Command="{Binding PressureCalibrationCommand}"
|
|
|
|
|
|
Width="100" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
<Button Content="电阻归零" Command="{Binding ResistanceZeroCommand}"
|
|
|
|
|
|
Width="100" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
<Button Content="进气阀" Command="{Binding InletValveControlCommand}"
|
|
|
|
|
|
Width="90" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
<Button Content="排气阀" Command="{Binding OutletValveControlCommand}"
|
|
|
|
|
|
Width="90" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
<Button Content="▶ 开始测试" Command="{Binding StartTestCommand}"
|
|
|
|
|
|
Width="130" Height="40" Margin="5" FontSize="14" FontWeight="Bold"
|
|
|
|
|
|
IsEnabled="{Binding IsTesting, Converter={StaticResource InverseBooleanConverter}}"
|
|
|
|
|
|
Background="{StaticResource PrimaryButtonBrush}"/>
|
|
|
|
|
|
<Button Content="■ 停止测试" Command="{Binding StopTestCommand}"
|
|
|
|
|
|
Width="130" Height="40" Margin="5" FontSize="14" FontWeight="Bold"
|
|
|
|
|
|
Background="Orange"/>
|
|
|
|
|
|
<Button Content="⟳ 重置" Command="{Binding ResetCommand}"
|
|
|
|
|
|
Width="100" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
<Button Content="📄 生成报告" Command="{Binding GenerateReportCommand}"
|
|
|
|
|
|
Width="110" Height="36" Margin="5" FontSize="13"/>
|
|
|
|
|
|
</WrapPanel>
|
2026-06-09 14:54:14 +08:00
|
|
|
|
</StackPanel>
|
|
|
|
|
|
</Border>
|
2026-06-10 16:38:04 +08:00
|
|
|
|
|
2026-06-09 14:54:14 +08:00
|
|
|
|
</Grid>
|
2026-04-18 19:00:34 +08:00
|
|
|
|
</UserControl>
|