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.

334 lines
16 KiB
Plaintext

5 days ago
<Window x:Class="Sln_Wpf.Page.AddWindows.AddTaskWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="新增任务" Height="680" Width="750"
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="GroupTitleStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Foreground" Value="#3A7CA5"/>
<Setter Property="Margin" Value="0,0,0,15"/>
<Setter Property="Padding" Value="0,0,0,8"/>
</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>
<!-- ========== 基本信息区域 ========== -->
<TextBlock Style="{StaticResource GroupTitleStyle}" Text="📋 基本信息"/>
<Grid Margin="0,0,0,20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- 任务编码 -->
<StackPanel Grid.Row="0" Grid.Column="0">
<TextBlock Style="{StaticResource LabelStyle}" Text="任务编码"/>
<TextBox x:Name="TxtTaskCode" Grid.Row="0" Grid.Column="0"
Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,15,15"
/>
</StackPanel>
<!-- 任务名称 -->
<StackPanel Grid.Row="0" Grid.Column="1">
<TextBlock Style="{StaticResource LabelStyle}" Text="任务名称"/>
<TextBox x:Name="TxtTaskName"
Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,15"
/>
</StackPanel>
<!-- 任务类型 -->
<StackPanel Grid.Row="1" Grid.Column="0">
<TextBlock Style="{StaticResource LabelStyle}" Text="任务类型"/>
<ComboBox x:Name="CmbTaskType"
Style="{StaticResource FormComboBoxStyle}"
SelectionChanged="CmbTaskType_SelectionChanged"
Margin="0,0,15,15">
<ComboBoxItem Content="请选择任务类型" IsEnabled="False"/>
</ComboBox>
</StackPanel>
<!-- 优先级 -->
<StackPanel Grid.Row="1" Grid.Column="1">
<TextBlock Style="{StaticResource LabelStyle}" Text="优先级"/>
<ComboBox x:Name="CmbPriority"
Style="{StaticResource FormComboBoxStyle}"
Margin="0,0,15,0" SelectedIndex="0">
<ComboBoxItem Content="普通" Tag="0"/>
<ComboBoxItem Content="较高" Tag="1"/>
<ComboBoxItem Content="高" Tag="2"/>
<ComboBoxItem Content="最高" Tag="3"/>
</ComboBox>
</StackPanel>
</Grid>
<!-- ========== 位置与物料区域 ========== -->
<TextBlock Style="{StaticResource GroupTitleStyle}" Text="📍 位置" Margin="0,10,0,0"/>
<Grid Margin="0,0,0,20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="62*"/>
<ColumnDefinition Width="244*"/>
<ColumnDefinition Width="307*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- 源位置 -->
<StackPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Margin="0,0,306,0" Grid.RowSpan="3" >
<TextBlock Style="{StaticResource LabelStyle}" Text="源位置:"/>
<TextBox x:Name="TxtSourceLocation"
Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,15,10"
/>
</StackPanel>
<!-- 目标位置 -->
<StackPanel Grid.Row="0" Grid.Column="2" Grid.RowSpan="3">
<TextBlock Style="{StaticResource LabelStyle}" Text="目标位置:"/>
<TextBox x:Name="TxtTargetLocation"
Style="{StaticResource FormTextBoxStyle}"
Margin="0,0,0,10"
/>
</StackPanel>
</Grid>
<!-- ========== 其他配置区域 ========== -->
<TextBlock Style="{StaticResource GroupTitleStyle}" Text="🔧 其他配置" Margin="0,10,0,0"/>
<Grid Margin="0,0,0,20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- 备注 -->
<StackPanel Grid.Row="1" Grid.Column="0" >
<TextBlock Style="{StaticResource LabelStyle}" Text="备注"/>
<TextBox x:Name="TxtRemark"
Style="{StaticResource FormTextBoxStyle}" Height="60"
TextWrapping="Wrap" AcceptsReturn="True"
VerticalScrollBarVisibility="Auto"
/>
</StackPanel>
</Grid>
</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>