<Window
        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:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
        xmlns:local="clr-namespace:Aucma.Core.SheetMetal.Views"
        x:Class="Aucma.Core.SheetMetal.Views.SplitPlanView"
        mc:Ignorable="d"
        Background="White"
        Title="计划维护" MinHeight="600" MinWidth="1000">

    <Window.Resources>
        <Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}">
            <Setter Property="VerticalAlignment" Value="Center" />
        </Style>
        <Style x:Key="ColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}">
            <Setter Property="HorizontalContentAlignment"  Value="Center"/>
            <Setter Property="Background" Value="#dddddd"/>
        </Style>
   
        <Style TargetType="{x:Type Slider}">
            <Style.Resources>
                <!-- 重写重复触发按钮的样式 -->
                <Style x:Key="RepeatButtonStyle" TargetType="{x:Type RepeatButton}">
                    <Setter Property="Focusable" Value="false" />
                    <Setter Property="IsTabStop" Value="false" />
                    <Setter Property="Padding" Value="0" />
                    <Setter Property="Width" Value="30" />
                </Style>
            </Style.Resources>
            <Setter Property="Stylus.IsPressAndHoldEnabled" Value="false" />
            <Setter Property="SmallChange" Value="1" />
            <!-- 重写Slider的模板 -->
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type Slider}">
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition />
                                <RowDefinition />
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition />
                                <ColumnDefinition Width="Auto" />
                            </Grid.ColumnDefinitions>
                            <TextBox Grid.RowSpan="2" Height="Auto"                                 Margin="0" Padding="0"                                 VerticalAlignment="Stretch" VerticalContentAlignment="Center"                                 Text="{Binding RelativeSource={RelativeSource Mode=TemplatedParent}, Path=Value}">
                                <!-- 给TextBox绑定上下命令 -->
                                <TextBox.InputBindings>
                                    <KeyBinding Gesture="Up" Command="{x:Static Slider.IncreaseSmall}" />
                                    <KeyBinding Gesture="Down" Command="{x:Static Slider.DecreaseSmall}" />
                                    <KeyBinding Gesture="PageUp" Command="{x:Static Slider.IncreaseLarge}" />
                                    <KeyBinding Gesture="PageDown" Command="{x:Static Slider.DecreaseLarge}" />
                                </TextBox.InputBindings>
                            </TextBox>
                            <RepeatButton Grid.Row="0" Grid.Column="1"  Command="{x:Static Slider.IncreaseSmall}"                                     Style="{StaticResource RepeatButtonStyle}">
                                <Path Data="M4,0 L0,4 8,4 Z" Fill="Black" />
                            </RepeatButton>
                            <RepeatButton Grid.Row="1" Grid.Column="1" Command="{x:Static Slider.DecreaseSmall}"                                     Style="{StaticResource RepeatButtonStyle}">
                                <Path Data="M0,0 L4,4 8,0 Z" Fill="Black" />
                            </RepeatButton>
                            <!-- 由于Slider的内部实现要求存在这些必要组件,所以必须保留,但是设置为隐藏即可 -->
                            <Border x:Name="TrackBackground" Visibility="Collapsed">
                                <Rectangle x:Name="PART_SelectionRange" Visibility="Collapsed" />
                            </Border>
                            <Thumb x:Name="Thumb" Visibility="Collapsed" />
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Window.Resources>

    <Border Grid.Row="1" Grid.Column="1" BorderBrush="#0288d1" BorderThickness="1" CornerRadius="5"  Margin="5">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="0.8*"/>
                <RowDefinition Height="9*"/>
            </Grid.RowDefinitions>
            <Border Grid.Row="0" BorderBrush="#0288d1" BorderThickness="0,0,0,1" CornerRadius="0"  Margin="1,1,5,5" >
                <TextBlock Text="计划维护" FontSize="20" FontWeight="Bold" Foreground="#0288d1" VerticalAlignment="Center" HorizontalAlignment="Center"/>
            </Border>
            <Border Grid.Row="1" BorderBrush="#0288d1" BorderThickness="0" CornerRadius="5"  Margin="1,1,5,5">
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="2*"/>
                        <ColumnDefinition/>
                    </Grid.ColumnDefinitions>
                    <UniformGrid Grid.Column="0"  Margin="5" >
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="auto"/>
                                <RowDefinition  />
                            </Grid.RowDefinitions>
                            <WrapPanel Grid.Row="0"  Margin="5 5 0 0">
                                <Label Content="查询条件" Width="60" VerticalAlignment="Center" />
                                <TextBox x:Name="queryParam" Text="" Style="{x:Null}" Width="200" HorizontalAlignment="Left" VerticalContentAlignment="Center" />
                                <Button Content="查询" Margin="9,0,4,0" Width="100" Command="{Binding QueryPlanCommand}" CommandParameter="{Binding Text, ElementName=queryParam}"/>
                            </WrapPanel>
                            <UniformGrid Grid.Row="1">
                                <DataGrid  ItemsSource="{Binding MaterialDataGrid}"    Background="#00000000" 
                            ColumnHeaderHeight="35" x:Name="dgvMH"
                            RowHeight="50" AutoGenerateColumns="False" RowHeaderWidth="0" 
                            GridLinesVisibility="None" VerticalAlignment="Stretch"
                            ScrollViewer.VerticalScrollBarVisibility="Visible"   ScrollViewer.HorizontalScrollBarVisibility="Visible"         
                            BorderThickness="0" CanUserAddRows="False" SelectionMode="Single" IsReadOnly="True"
                            Foreground="Gray" SelectedItem="{Binding SelectedCells, Mode=OneWayToSource}">

                                    <DataGrid.Columns>
                                        <DataGridTextColumn   Binding="{Binding No}" Header="序号" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding PlanCode}" Header="计划号" Width="2*"  ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding MaterialCode}" Header="物料编号" Width="2*"  ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding MaterialName}" Header="物料名称" Width="4*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding OrderCode}" Header="订单编码" Width="2*"  ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding PlanAmount}" Header="计划" Width="1*"   ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding ResidueAmount}" Header="剩余" Width="1*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                        <DataGridTextColumn  MinWidth="160" Binding="{Binding SpliteResidueAmount}" Header="计划可拆分数量" Width="1*" ElementStyle="{StaticResource DataGridTextColumnCenterSytle}"/>
                                    </DataGrid.Columns>
                                </DataGrid>
                            </UniformGrid>
                        </Grid>
                    </UniformGrid>
                    <Border Grid.Column="1" BorderBrush="#0288d1" BorderThickness="1" CornerRadius="5"  Margin="5">
                        <Grid Margin="5 30">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                            </Grid.RowDefinitions>
                            <WrapPanel Grid.Row="0"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                                <TextBlock Text="计划编码" FontSize="15" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                <TextBox  x:Name="PlanCode" Text="{Binding SelectedItem.PlanCode, ElementName=dgvMH}"  IsReadOnly="True" FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Center"   Margin="15 0 0 0"   MinWidth="200"
                             materialDesign:HintAssist.Hint="计划编码"  />
                            </WrapPanel>
                            <WrapPanel Grid.Row="1"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                                <TextBlock Text="订单编码" FontSize="15" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                <TextBox  x:Name="OrderCode" Text="{Binding SelectedItem.OrderCode, ElementName=dgvMH}"  IsReadOnly="True" FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Center"   Margin="15 0 0 0"  Width="{Binding Path=ActualWidth, ElementName=PlanCode}" 
                             materialDesign:HintAssist.Hint="订单编码"  />
                            </WrapPanel>    

                            <WrapPanel Grid.Row="2"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 5">
                                <TextBlock Text="物料编码" FontSize="15" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                <TextBox  x:Name="OrderNo" Text="{Binding SelectedItem.MaterialCode, ElementName=dgvMH}"  IsReadOnly="True" Margin="15 0 0 0 "   FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Center"  Width="{Binding Path=ActualWidth, ElementName=PlanCode}"  
                             materialDesign:HintAssist.Hint="物料编码"  />
                            </WrapPanel>

                            <WrapPanel Grid.Row="3"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                                <TextBlock Text="物料名称" FontSize="15" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                <TextBox   x:Name="MaterialName" Text="{Binding SelectedItem.MaterialName, ElementName=dgvMH}"  IsReadOnly="True" Margin="15 0 0 0"    FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="{Binding Path=ActualWidth, ElementName=PlanCode}"
                                   materialDesign:HintAssist.Hint="物料名称" />
                            </WrapPanel>

                            <WrapPanel Grid.Row="4"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                                <TextBlock Text="可拆分数量" FontSize="15" Foreground="Gray" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                <!--<TextBox   x:Name="SpliteResidueAmount" Text="{Binding SelectedItem.SpliteResidueAmount, ElementName=dgvMH}"  Margin="15 0 0 0"   materialDesign:HintAssist.Hint="可拆分数量"  FontSize="15"   VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="{Binding Path=ActualWidth, ElementName=PlanCode}"/>-->
                                <Slider  x:Name="SpliteResidueAmount"  Minimum="0" Maximum="100" Value="90" Foreground="white" Height="30" VerticalContentAlignment="Center"  HorizontalContentAlignment="Center"  VerticalAlignment="Center" HorizontalAlignment="Center"  Margin="15 0 0 0"   FontSize="15"   Width="{Binding Path=ActualWidth, ElementName=PlanCode}"/>
                            </WrapPanel>
                            <WrapPanel Grid.Row="5"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                                <Button Content="手动创建" Margin="5" Command="{Binding CreateTaskCommand}" CommandParameter="{Binding Text, ElementName=OrderCode}"/>
                            </WrapPanel>
                        </Grid>
                    </Border>
                </Grid>
            </Border>
        </Grid>
    </Border>
</Window>