<UserControl x:Class="Aucma.Core.PrintTo.Views.IndexPage"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
             mc:Ignorable="d" 
             d:DesignHeight="800"
             d:DesignWidth="1500">
    <UserControl.Resources>
        <Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}">
            <Setter Property="VerticalAlignment" Value="Center" />
        </Style>
        
        <Style TargetType="DataGrid">
            <!--网格线颜色-->
            <Setter Property="CanUserResizeColumns" Value="false"/>
            <Setter Property="Background" Value="#1152AC" />
            <Setter Property="BorderBrush" Value="#4285DE" />
            <Setter Property="Foreground" Value="White"/>
            <Setter Property="HorizontalGridLinesBrush">
                <Setter.Value>
                    <SolidColorBrush Color="#4285DE"/>
                </Setter.Value>
            </Setter>
            <Setter Property="VerticalGridLinesBrush">
                <Setter.Value>
                    <SolidColorBrush Color="#1152AC"/>
                </Setter.Value>
            </Setter>
        </Style>
        <!--列头标题栏样式-->
        <Style TargetType="DataGridColumnHeader">
            <!--<Setter Property="HorizontalContentAlignment" Value="Center"/>
            <Setter Property="VerticalContentAlignment" Value="Center"/>-->
            <!--<Setter Property="Background" Value="#dddddd"/>
            <Setter Property="Foreground" Value="Black"/>-->
            <!--<Setter Property="BorderThickness" Value="1" />-->
            <Setter Property="HorizontalContentAlignment" Value="Center" />
            <Setter Property="BorderBrush" Value="#dddddd" />
            <Setter Property="Height" Value="40"/>
            <Setter Property="FontSize" Value="14"/>
            <Setter Property="Background" Value="#4285DE"/>
            <Setter Property="Foreground" Value="White"/>
        </Style>
        
        <!--单元格样式-->
        <Style TargetType="DataGridCell">
            <Setter Property="FocusVisualStyle" Value="{x:Null}" />
            <Setter Property="BorderThickness" Value="0" />
            <Setter Property="BorderBrush" Value="Gray" />
            <Setter Property="Height" Value="40"/>
            <Setter Property="FontSize" Value="12"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type DataGridCell}">
                        <Grid Background="{TemplateBinding Background}" >
                            <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="Background" Value="#4285DE"/>
                    <Setter Property="Foreground" Value="White"/>
                </Trigger>
            </Style.Triggers>
            
        </Style>
        <!--背景色改变必须先设置cellStyle 因为cellStyle会覆盖rowStyle样式,换行换色-->
        <!--<Style TargetType="DataGridRow">
            <Setter Property="Height" Value="30"/>
            <Style.Triggers>
                <Trigger Property="AlternationIndex" Value="0">
                    <Setter Property="Background" Value="#e7e7e7"/>
                </Trigger>
                <Trigger Property="AlternationIndex" Value="1">
                    <Setter Property="Background" Value="#f2f2f2" />
                </Trigger>
                <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Background" Value="#f1ef9f" />
                </Trigger>
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="Background" Value="#05c4ff"/>
                </Trigger>
                <Trigger Property="IsFocused" Value="True">
                    <Setter Property="Background" Value="#05c4ff"/>
                </Trigger>
             </Style.Triggers>
        </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>
    </UserControl.Resources>

    <Grid >
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1.8*"/>
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <UniformGrid Grid.Column="0" Margin="3" >
            <Border BorderBrush="#0288d1" BorderThickness="1" Padding="5" CornerRadius="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" Foreground="white" />
                        <TextBox x:Name="queryParam" Text="" Style="{x:Null}" Width="200" HorizontalAlignment="Left" VerticalContentAlignment="Center" />
                        <Button Content="查询" Background="#4285DE" Margin="9,0,4,0" Width="100" Command="{Binding QueryStringCommand}" CommandParameter="{Binding ElementName=queryParam,Path=Text}">

                        </Button>
                    </WrapPanel>
                    <UniformGrid Grid.Row="1"  Margin="5 5 0 0" x:Name="HeightPanel">
                        <!-- 
	                        AlternationCount="2"   表示两行交替显示背景色;
	                        AutoGenerateColumns="False"   表示不让DataGrid自动生成列。如果设置成true,则效果: 多出了不需要的列;
	                        HorizontalAlignment="Left" 不显示多余的空白列;
	                        -->
                        <DataGrid     x:Name="dgvMH"   Height="{Binding Path=ActualHeight, ElementName=HeightPanel}"
                              HorizontalAlignment="Center" VerticalAlignment="Top"  AlternationCount="2"      RowHeaderWidth="0"
                                  ItemsSource="{Binding Datalist}"  ColumnWidth="*" AutoGenerateColumns="False" IsReadOnly="True" CanUserAddRows="False" SelectionMode="Single" 
                                  SelectedItem="{Binding SelectedCells, Mode=OneWayToSource}">
                            <DataGrid.Columns>
                                <DataGridTextColumn   MinWidth="160"    Binding="{Binding CreatedTime, StringFormat=\{0:yyy-MM-dd HH:mm\}}"    Header="订单日期"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="110"    Binding="{Binding OrderCode}"      Header="订单编码"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="110"    Binding="{Binding ProductCode}"    Header="产品编码"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="200"    Binding="{Binding ProductName}"    Header="产品名称"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="100"    Binding="{Binding PlanAmount}"     Header="订单量"         ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="100"    Binding="{Binding CompleteAmount}"     Header="完成量"         ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="100"    Binding="{Binding ErrorNum}"        Header="异常量"         ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="120"    Binding="{Binding LinerCodeNum}"    Header="内胆码已打量"   ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="120"    Binding="{Binding BoxCodeNum}"      Header="U壳码已打量"    ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <!--<DataGridTextColumn   MinWidth="110"    Binding="{Binding MaterialCode}"   Header="物料编码"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="200"    Binding="{Binding MaterialName}"   Header="物料名称"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>
                                <DataGridTextColumn   MinWidth="200"    Binding="{Binding StandardAmount}" Header="物料数量"       ElementStyle="{StaticResource  DataGridTextColumnCenterSytle}"/>-->
                            </DataGrid.Columns>
                        </DataGrid>
                    </UniformGrid>
                </Grid>
            </Border>
        </UniformGrid>
        <UniformGrid Grid.Column="1" Margin="0 5 3 3">
            <Border BorderBrush="#0288d1" BorderThickness="1"  CornerRadius="5">
                <Grid Margin="0 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="white" HorizontalAlignment="Center" VerticalAlignment="Center" />
                        <TextBox  x:Name="ProductNo" Foreground="white" Text="{Binding SelectedItem.ProductCode, ElementName=dgvMH}"  IsReadOnly="True" Margin="15 0 0 0 "   FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Left"  Width="400"  
                           materialDesign:HintAssist.Hint="产品编码"    />
                    </WrapPanel>

                    <WrapPanel Grid.Row="1"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                        <TextBlock Text="产品名称" FontSize="15" Foreground="white" HorizontalAlignment="Center" VerticalAlignment="Center" />
                        <TextBox   x:Name="ProductName" Foreground="white" Text="{Binding SelectedItem.ProductName, ElementName=dgvMH}"  IsReadOnly="True" Margin="15 0 0 0"    FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Left" Width="{Binding Path=ActualWidth, ElementName=ProductNo}"
                                   materialDesign:HintAssist.Hint="产品名称" />
                    </WrapPanel>
                    <WrapPanel Grid.Row="2"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                        <TextBlock Text="物料名称" FontSize="15" Foreground="white" HorizontalAlignment="Center" VerticalAlignment="Center" />
                        <TextBox   x:Name="MaterialName"  Foreground="white" Text="{Binding SelectedItem.MaterialName, ElementName=dgvMH}"  IsReadOnly="True" Margin="15 0 0 0"    FontSize="15"  VerticalContentAlignment="Center" HorizontalContentAlignment="Left" Width="{Binding Path=ActualWidth, ElementName=ProductNo}"
                                   materialDesign:HintAssist.Hint="物料名称" />
                    </WrapPanel>
                    <WrapPanel Grid.Row="3"  HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0 15">
                        <TextBlock Text="打印数量" FontSize="15" Foreground="white" HorizontalAlignment="Center" VerticalAlignment="Center" />
                        <!--<TextBox   x:Name="PlanAmount" Foreground="white" Text="{Binding SelectedItem.StandardAmount, ElementName=dgvMH}"  Margin="15 0 0 0"   FontSize="15"   VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="{Binding Path=ActualWidth, ElementName=ProductNo}"
                             materialDesign:HintAssist.Hint="打印数量"/>-->
                        <Slider  x:Name="PlanAmount"  Minimum="0" Maximum="500" Value="{Binding SelectedItem.StandardAmount, ElementName=dgvMH}" Foreground="white" Height="30" VerticalContentAlignment="Center"  HorizontalContentAlignment="Left"  VerticalAlignment="Center" HorizontalAlignment="Center"  Margin="15 0 0 0"   FontSize="15"   Width="340"/>
                        <TextBlock Text="1~500" Width="50" Margin="10 0 0 0" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                    </WrapPanel>
                    <Border Grid.Row="4" BorderBrush="#0288d1" BorderThickness="1"  CornerRadius="5" Margin="30 5"  >
                        <StackPanel >
                            <WrapPanel Height="300">
                                <RadioButton   Content="内胆码-L" Foreground="white" FontSize="15"  x:Name="内胆" Margin="10 5" Command="{Binding RadioQueryCommand}" CommandParameter="{Binding Name, ElementName=内胆}"/>
                                <RadioButton Content="箱体码-B" Foreground="white" FontSize="15" x:Name="箱体" Margin="10 5" Command="{Binding RadioQueryCommand}"  CommandParameter="{Binding Name, ElementName=箱体}"/>
                            </WrapPanel>
                            <!--<Button Content="添加"  Foreground="White" BorderBrush="#0288d1" Background="#4285DE" HorizontalAlignment="Right" VerticalAlignment="Bottom" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" />-->
                        </StackPanel>
                    </Border>
                    <WrapPanel Grid.Row="5" HorizontalAlignment="Center">
                        <Button
                             Background="#4285DE"
                             Content="常规"  Width="100" Margin="0 10 0 0" Command="{Binding PrintCommand}" IsEnabled="{Binding PrintIsEnabled}"  CommandParameter="{Binding ElementName=ProductNo,Path=Text}"/>
                        <Button
                            Background="#4285DE"
                             Content="补打" Margin="10 10 0 0"  Width="100"  Command="{Binding SupplementPrintCommand}"  CommandParameter="{Binding ElementName=ProductNo,Path=Text}"
                             IsEnabled="{Binding DataContext.ControlsEnabled, RelativeSource={RelativeSource FindAncestor, AncestorType=Window}}"/>
                        <Button
                            Background="#4285DE"
                             Content="追打" Margin="10 10 0 0"  Width="100"  Command="{Binding AppendPrintPrintCommand}"  CommandParameter="{Binding ElementName=ProductNo,Path=Text}"
                             IsEnabled="{Binding DataContext.ControlsEnabled, RelativeSource={RelativeSource FindAncestor, AncestorType=Window}}"/>
                        <!--<Button
                             Background="#4285DE"
                             Content="特殊" Margin="10 10 0 0"  Width="100"  Command="{Binding SupplementPrintCommand}"
                             IsEnabled="{Binding DataContext.ControlsEnabled, RelativeSource={RelativeSource FindAncestor, AncestorType=Window}}" CommandParameter="{Binding ElementName=ProductNo,Path=Text}"/>-->
                        <!--<Button
                             Background="#4285DE"
                             Content="设备" Margin="10 10 0 0"  Width="100"  Command="{Binding SupplementPrintCommand}"
                             IsEnabled="{Binding DataContext.ControlsEnabled, RelativeSource={RelativeSource FindAncestor, AncestorType=Window}}" CommandParameter="{Binding ElementName=ProductNo,Path=Text}"/>-->

                    </WrapPanel>
                </Grid>
            </Border>
        </UniformGrid>
    </Grid>
    
</UserControl>