You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

273 lines
14 KiB
XML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<Window x:Class="Sln_Wpf.Page.AddParameterWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="新增设备" Height="550" Width="650"
WindowStartupLocation="CenterOwner"
WindowStyle="None" ResizeMode="NoResize"
Background="#F5F7FA">
<Window.Resources>
<!-- 卡片样式 -->
<Style x:Key="CardStyle" TargetType="Border">
<Setter Property="Background" Value="White"/>
<Setter Property="CornerRadius" Value="12"/>
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect Color="LightGray" BlurRadius="15" ShadowDepth="2" Opacity="0.3"/>
</Setter.Value>
</Setter>
</Style>
<!-- 输入框样式 -->
<Style x:Key="FormTextBoxStyle" TargetType="TextBox">
<Setter Property="Height" Value="38"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Padding" Value="12,8"/>
<Setter Property="BorderBrush" Value="#E0E4E8"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Background" Value="White"/>
<Setter Property="Foreground" Value="#2C3E50"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="#3A7CA5"/>
</Trigger>
<Trigger Property="IsFocused" Value="True">
<Setter Property="BorderBrush" Value="#3A7CA5"/>
<Setter Property="BorderThickness" Value="2"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- 下拉框样式 -->
<Style x:Key="FormComboBoxStyle" TargetType="ComboBox">
<Setter Property="Height" Value="38"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Padding" Value="10,5"/>
<Setter Property="BorderBrush" Value="#E0E4E8"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Background" Value="White"/>
<Setter Property="Foreground" Value="#2C3E50"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="#3A7CA5"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- 标签样式 -->
<Style x:Key="LabelStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="13"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Foreground" Value="#4A627A"/>
<Setter Property="Margin" Value="0,0,0,6"/>
</Style>
<!-- 确认按钮样式 -->
<Style x:Key="ConfirmButtonStyle" TargetType="Button">
<Setter Property="Height" Value="42"/>
<Setter Property="Width" Value="120"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Background" Value="#27AE60"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}"
CornerRadius="8"
Padding="12,10">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#229954"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="#1E8449"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- 取消按钮样式 -->
<Style x:Key="CancelButtonStyle" TargetType="Button">
<Setter Property="Height" Value="42"/>
<Setter Property="Width" Value="120"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Foreground" Value="#5A6E7A"/>
<Setter Property="Background" Value="#F0F2F5"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}"
CornerRadius="8"
Padding="12,10">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#E0E4E8"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- 窗口控制按钮样式 -->
<Style x:Key="WindowControlButtonStyle" TargetType="Button">
<Setter Property="Width" Value="40"/>
<Setter Property="Height" Value="40"/>
<Setter Property="FontSize" Value="16"/>
<Setter Property="Foreground" Value="#5A6E7A"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Background="{TemplateBinding Background}"
CornerRadius="4">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#E9ECF1"/>
<Setter Property="Foreground" Value="#2C3E50"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- 关闭按钮样式 -->
<Style x:Key="CloseButtonStyle" TargetType="Button" BasedOn="{StaticResource WindowControlButtonStyle}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#E74C3C"/>
<Setter Property="Foreground" Value="White"/>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="60"/>
<RowDefinition Height="*"/>
<RowDefinition Height="80"/>
</Grid.RowDefinitions>
<!-- 顶部栏:标题 + 窗口控制按钮 -->
<Border Grid.Row="0" Background="White" BorderBrush="#E9ECF1" BorderThickness="0,0,0,1">
<Grid Margin="20,0,15,0">
<Rectangle Fill="Transparent" MouseLeftButtonDown="Window_MouseLeftButtonDown" Cursor="SizeAll"/>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="⚙️ " FontSize="22" VerticalAlignment="Center"/>
<TextBlock Text="新增参数" FontSize="18" FontWeight="Bold" Foreground="#2C3E50" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock Text=" | 添加设备参数配置" FontSize="13" Foreground="#7F8C8D" VerticalAlignment="Center" Margin="10,0,0,0"/>
</StackPanel>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Center">
<Button x:Name="BtnMinimize" Style="{StaticResource WindowControlButtonStyle}" Content="─" Click="BtnMinimize_Click" ToolTip="最小化"/>
<Button x:Name="BtnClose" Style="{StaticResource CloseButtonStyle}" Content="✕" Click="BtnClose_Click" ToolTip="关闭"/>
</StackPanel>
</Grid>
</Border>
<!-- 表单内容区 -->
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto">
<Border Style="{StaticResource CardStyle}" Margin="30,25,30,15" Padding="30,25">
<StackPanel>
<!-- 设备ID -->
<TextBlock Style="{StaticResource LabelStyle}" Text="设备ID"/>
<TextBox x:Name="TxtEquipCode" Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,20"
/>
<!-- 设备名称 -->
<TextBlock Style="{StaticResource LabelStyle}" Text="设备名称"/>
<TextBox x:Name="TxtEquipName" Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,20"
/>
<TextBlock Style="{StaticResource LabelStyle}" Text="单位"/>
<ComboBox x:Name="CmbEquipType" Style="{StaticResource FormComboBoxStyle}"
Margin="0,0,0,20" SelectedIndex="0">
<ComboBoxItem Content="无"/>
<ComboBoxItem Content="AGV"/>
<ComboBoxItem Content="提升机"/>
</ComboBox>
<!-- 参数名称 -->
<TextBlock Style="{StaticResource LabelStyle}" Text="参数名称"/>
<TextBox x:Name="TxtParamKey" Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,20"
/>
<!-- 参数值 -->
<TextBlock Style="{StaticResource LabelStyle}" Text="参数值"/>
<TextBox x:Name="TxtParamValue" Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,20"
/>
<!-- 单位 -->
<TextBlock Style="{StaticResource LabelStyle}" Text="单位"/>
<ComboBox x:Name="CmbParamUnit" Style="{StaticResource FormComboBoxStyle}"
Margin="0,0,0,20" SelectedIndex="0">
<ComboBoxItem Content="无"/>
<ComboBoxItem Content="m/s"/>
<ComboBoxItem Content="m/s²"/>
<ComboBoxItem Content="kg"/>
<ComboBoxItem Content="Ah"/>
<ComboBoxItem Content="V"/>
<ComboBoxItem Content="A"/>
<ComboBoxItem Content="kW"/>
<ComboBoxItem Content="r/min"/>
<ComboBoxItem Content="℃"/>
<ComboBoxItem Content="%"/>
<ComboBoxItem Content="mm"/>
<ComboBoxItem Content="s"/>
</ComboBox>
<!-- 参数类型数据类型string/int/bool -->
<TextBlock Style="{StaticResource LabelStyle}" Text="参数类型"/>
<ComboBox x:Name="CmbParamType" Style="{StaticResource FormComboBoxStyle}"
Margin="0,0,0,20" SelectedIndex="0">
<ComboBoxItem Content="📝 String字符串" Tag="string"/>
<ComboBoxItem Content="🔢 Int整数" Tag="int"/>
<ComboBoxItem Content="✅ Bool布尔值" Tag="bool"/>
</ComboBox>
<!-- 修改时间(只读,自动生成) -->
<TextBlock Style="{StaticResource LabelStyle}" Text="修改时间"/>
<TextBox x:Name="TxtUpdateTime" Style="{StaticResource FormTextBoxStyle}"
IsReadOnly="True" Background="#F0F2F5"
Margin="0,0,0,0"/>
</StackPanel>
</Border>
</ScrollViewer>
<!-- 底部按钮区 -->
<Border Grid.Row="2" Background="White" BorderBrush="#E9ECF1" BorderThickness="0,1,0,0">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Button x:Name="BtnConfirm" Style="{StaticResource ConfirmButtonStyle}" Content="✅ 确认添加" Click="BtnConfirm_Click"/>
<Button x:Name="BtnCancel" Style="{StaticResource CancelButtonStyle}" Content="❌ 取消" Click="BtnCancel_Click"/>
</StackPanel>
</Border>
</Grid>
</Window>