<UserControl
    x:Class="BPASmartClient.DosingSystem.View.RecipeControlView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:control="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:local="clr-namespace:BPASmartClient.DosingSystem.View"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:pry="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource"
    xmlns:vm="clr-namespace:BPASmartClient.DosingSystem.ViewModel"
    d:DesignHeight="450"
    d:DesignWidth="800"
    mc:Ignorable="d">

    <UserControl.DataContext>
        <vm:RecipeControlViewModel />
    </UserControl.DataContext>

    <UserControl.Resources>
        <Style x:Key="UserItemContainerStyle" TargetType="ListBoxItem">
            <Style.Resources>
                <!--  SelectedItem with focus  -->
                <SolidColorBrush
                    x:Key="{x:Static SystemColors.HighlightBrushKey}"
                    Opacity=".4"
                    Color="White" />
                <!--  SelectedItem without focus  -->
                <SolidColorBrush
                    x:Key="{x:Static SystemColors.ControlBrushKey}"
                    Opacity=".4"
                    Color="White" />
            </Style.Resources>
            <!--  设置触发器  -->
            <Style.Triggers>
                <Trigger Property="IsMouseOver" Value="true">
                    <Setter Property="Background" Value="White" />
                    <Setter Property="Foreground" Value="White" />
                </Trigger>
                <Trigger Property="IsFocused" Value="true">
                    <Setter Property="Background" Value="White" />
                    <Setter Property="Foreground" Value="White" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </UserControl.Resources>

    <Grid>

        <ScrollViewer>
            <ItemsControl ItemsSource="{Binding Recipes}">
                <ItemsControl.ItemTemplate>
                    <DataTemplate>
                        <Grid Height="150" VerticalAlignment="Top">
                            <Border
                                Name="ShadowElement"
                                Height="150"
                                VerticalAlignment="Top"
                                BorderBrush="#00BEFA"
                                BorderThickness="2"
                                ClipToBounds="True"
                                CornerRadius="8">
                                <Border.Effect>
                                    <DropShadowEffect
                                        BlurRadius="18"
                                        ShadowDepth="0"
                                        Color="#00BEFA" />
                                </Border.Effect>
                            </Border>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="auto" />
                                    <ColumnDefinition />
                                    <ColumnDefinition Width="auto" />
                                </Grid.ColumnDefinitions>

                                <Grid Margin="20,0,0,0">
                                    <Grid.RowDefinitions>
                                        <RowDefinition />
                                        <RowDefinition />
                                    </Grid.RowDefinitions>
                                    <TextBlock
                                        FontSize="40"
                                        Foreground="White"
                                        Text="{Binding RecipeName}" />
                                    <Button
                                        Grid.Row="1"
                                        Width="80"
                                        Height="30"
                                        HorizontalAlignment="Left"
                                        Command="{Binding DataContext.StartCommand, RelativeSource={RelativeSource AncestorType=ItemsControl, Mode=FindAncestor}}"
                                        CommandParameter="{Binding RecipeName}"
                                        Content="配方下发"
                                        IsEnabled="{Binding IsEnable}" />
                                </Grid>

                                <ListView
                                    Grid.Column="1"
                                    Margin="10"
                                    Background="Transparent"
                                    BorderBrush="#00BEFA"
                                    BorderThickness="2,0,2,0"
                                    ItemsSource="{Binding RawMaterials}"
                                    ScrollViewer.HorizontalScrollBarVisibility="Disabled">
                                    <ListView.ItemsPanel>
                                        <ItemsPanelTemplate>
                                            <UniformGrid
                                                HorizontalAlignment="Left"
                                                VerticalAlignment="Top"
                                                Columns="4" />
                                        </ItemsPanelTemplate>
                                    </ListView.ItemsPanel>

                                    <ListView.ItemTemplate>
                                        <DataTemplate>
                                            <StackPanel
                                                Grid.Column="1"
                                                Height="20"
                                                Margin="20,0,0,0"
                                                VerticalAlignment="Top"
                                                Orientation="Horizontal">
                                                <Ellipse
                                                    Width="{Binding ElementName=n, Path=ActualHeight}"
                                                    Margin="0,0,5,0"
                                                    Fill="{Binding RecipeStatus, Converter={StaticResource StatusConverter}}" />
                                                <TextBlock
                                                    Name="n"
                                                    FontSize="16"
                                                    Foreground="White"
                                                    Text="{Binding RawMaterialName}" />

                                            </StackPanel>
                                        </DataTemplate>
                                    </ListView.ItemTemplate>
                                </ListView>

                                <StackPanel
                                    Grid.Column="2"
                                    Margin="5,0"
                                    VerticalAlignment="Center">
                                    <StackPanel Margin="0,0,0,5" Orientation="Horizontal">
                                        <Ellipse
                                            Width="{Binding ElementName=tb, Path=ActualHeight}"
                                            Margin="0,0,5,0"
                                            Fill="Green" />
                                        <TextBlock
                                            Name="tb"
                                            Foreground="#ddd"
                                            Text="准备就绪" />
                                    </StackPanel>
                                    <StackPanel Margin="0,0,0,5" Orientation="Horizontal">
                                        <Ellipse
                                            Width="{Binding ElementName=tb, Path=ActualHeight}"
                                            Margin="0,0,5,0"
                                            Fill="Yellow" />
                                        <TextBlock
                                            Name="tb1"
                                            Foreground="#ddd"
                                            Text="等待接料" />
                                    </StackPanel>
                                    <StackPanel Margin="0,0,0,5" Orientation="Horizontal">
                                        <Ellipse
                                            Width="{Binding ElementName=tb, Path=ActualHeight}"
                                            Margin="0,0,5,0"
                                            Fill="Aqua" />
                                        <TextBlock
                                            Name="tb2"
                                            Foreground="#ddd"
                                            Text="接料完成" />
                                    </StackPanel>
                                    <StackPanel Margin="0,0,0,5" Orientation="Horizontal">
                                        <Ellipse
                                            Width="{Binding ElementName=tb, Path=ActualHeight}"
                                            Margin="0,0,5,0"
                                            Fill="Red" />
                                        <TextBlock
                                            Name="tb3"
                                            Foreground="#ddd"
                                            Text="设备异常" />
                                    </StackPanel>
                                </StackPanel>
                            </Grid>
                        </Grid>
                    </DataTemplate>
                </ItemsControl.ItemTemplate>
            </ItemsControl>
        </ScrollViewer>
    </Grid>
</UserControl>
