<Page x:Class="FLY.Thick.Blowing.UI.Fix.Client.PgBlowingExt"
      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:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
      xmlns:local="clr-namespace:FLY.Thick.Blowing.UI.Fix.Client"
      xmlns:sys="clr-namespace:System;assembly=mscorlib"
      mc:Ignorable="d" 
      d:DesignWidth="1280"
      Background="#E6E6E6"
	Title="吹膜测厚.辅助设置" >
    <Page.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/FLY.ControlLibrary;component/Themes/Dictionary_MyStyle.xaml"/>
                <ResourceDictionary Source="pack://application:,,,/FLY.Thick.Base.UI;component/Converter/Dictionary_MyConv.xaml"/>
                <ResourceDictionary Source="pack://application:,,,/FLY.Thick.Blowing.UI;component/PgBlowing/PgBlowingExtStyle.xaml"/>
            </ResourceDictionary.MergedDictionaries>
            <local:PgBlowingExtVmUt x:Key="viewModel" VelocityFilter="5" >
                <local:PgBlowingExtVmUt.Cfl>
                    <local:CalFilmLenUt IsCanDownload="True" Msg="下载中" IsDataReady="True" />
                </local:PgBlowingExtVmUt.Cfl>
            </local:PgBlowingExtVmUt>
            <sys:Boolean x:Key="False">False</sys:Boolean>
        </ResourceDictionary>
        
    </Page.Resources>
    <Grid d:DataContext="{StaticResource viewModel}">
        <Grid.RowDefinitions>
            <RowDefinition Height="auto" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <StackPanel Orientation="Horizontal" Background="{StaticResource Background_Title}" >
            <Button Style="{StaticResource ButtonStyle_back2}" Command="BrowseBack"/>
            <TextBlock Style="{StaticResource TextBlockStyle_Title}"  Text="吹膜测厚"/>
            <TextBlock Text="辅助设置" FontSize="30" VerticalAlignment="Center" Margin="5" Foreground="LightGray"/>
        </StackPanel>

        <ScrollViewer CanContentScroll="False" PanningMode="Both" Grid.Row="1"  >
            <StackPanel Margin="10">
                <Border Style="{StaticResource CardBorderStyle}">
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition Width="auto"/>
                        </Grid.ColumnDefinitions>
                        <Grid >
                            <StackPanel Orientation="Horizontal" 
                                        Visibility="{Binding Cfl.IsCanDownload,Converter={StaticResource visbilityconv}}">
                                <StackPanel Orientation="Vertical" Margin="5">
                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldHeaderEditable}" Text="时间" />
                                    <StackPanel Orientation="Horizontal" >
                                        <TextBox HorizontalAlignment="Left" MaxWidth="150" Style="{StaticResource TextBoxStyle_FieldContent}"
                                                 Text="{Binding GetDataMinute}" />
                                        <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="min" />
                                        <StackPanel Orientation="Horizontal" DataContext="{Binding Cfl}">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm_interval}" Text="|" />
                                            <StackPanel>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最小" />
                                                <StackPanel Orientation="Horizontal">
                                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="{Binding DataMinMinute}" 
                                                               />
                                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="min" />
                                                </StackPanel>
                                            </StackPanel>
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm_interval}" Text="|" />
                                            <StackPanel>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最大" />
                                                <StackPanel Orientation="Horizontal">
                                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="{Binding DataMaxMinute}" />
                                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="min" />
                                                </StackPanel>
                                            </StackPanel>
                                        </StackPanel>
                                    </StackPanel>
                                </StackPanel>
                                <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
                                    <Button Content="获取数据" Style="{StaticResource AccentedSquareButtonStyle2}" Command="{Binding GetDataCmd}"
                                        IsEnabled="{Binding Cfl.IsDownloading,Converter={StaticResource e2bconv}, ConverterParameter={StaticResource False}}"
                                        />
                                    <TextBlock Text="{Binding Cfl.Msg}" 
                                               Style="{StaticResource TextBlockStyle_FieldContent_mm}"/>
                                </StackPanel>
                                
                            </StackPanel>
                            <TextBlock Text="旋转次数不足2次,不能下载数据" Style="{StaticResource TextBlockStyle_FieldContent}" Foreground="Red" VerticalAlignment="Center"
                                       Visibility="{Binding Cfl.IsCanDownload,Converter={StaticResource visbilityconv},ConverterParameter=HiddenWhenTrue}"
                                       />
                        </Grid>

                        <StackPanel Grid.Column="1" Orientation="Horizontal">
                            <Button Content="保存" Style="{StaticResource SquareButtonStyle2}" Command="{Binding SaveCmd}"/>
                            <Button Content="加载" Style="{StaticResource SquareButtonStyle2}"  Command="{Binding LoadCmd}"/>
                        </StackPanel>
                    </Grid>
                </Border>
                <StackPanel Visibility="{Binding Cfl.IsDataReady,Converter={StaticResource visbilityconv},ConverterParameter=Collapsed}">
                    <Border Style="{StaticResource CardBorderStyle}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource CardTitleStyle}" Text="厚度趋势"/>
                        <lvc:CartesianChart Height="150" DisableAnimations="True" Margin="5" Hoverable="False" DataTooltip="{x:Null}" >
                                <lvc:CartesianChart.Series>
                                    <lvc:LineSeries Values="{Binding ThicknessValues}" Configuration="{Binding MapperTv}" />
                            </lvc:CartesianChart.Series>
                            <lvc:CartesianChart.AxisX>
                                <lvc:Axis LabelFormatter="{Binding DateTimeFormatter}" 
                                          x:Name="axisXAD" 
                                          Foreground="DarkSlateBlue"
                                          Sections="{Binding LimitValues,Converter={StaticResource limit2SectionsConv}}"
                                          />
                            </lvc:CartesianChart.AxisX>
                            <lvc:CartesianChart.AxisY>
                                <lvc:Axis LabelFormatter="{Binding YFormatter}"
                                          Foreground="DarkSlateBlue"
                                          />
                            </lvc:CartesianChart.AxisY>
                        </lvc:CartesianChart>
                    </StackPanel>
                </Border>
                <Border Style="{StaticResource CardBorderStyle}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource CardTitleStyle}"  Text="线速度趋势"/>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <StackPanel Orientation="Horizontal">
                                <StackPanel Margin="5,0">
                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldHeaderEditable}" VerticalAlignment="Bottom" Text="滤波" />
                                    <StackPanel Orientation="Horizontal">
                                        <TextBox Style="{StaticResource TextBoxStyle_FieldContent}" Text="{Binding VelocityFilter}" VerticalAlignment="Bottom" />
                                        <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="s" />
                                    </StackPanel>
                                </StackPanel>
                                    <Button Content="更新" Style="{StaticResource SquareButtonStyle2}" Command="{Binding UpdateVCmd}"
                                        IsEnabled="{Binding Cfl.IsDataReady}"
                                        />
                            </StackPanel>
                                <StackPanel Grid.Column="1">
                                    <StackPanel Orientation="Horizontal"  >
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最大值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}"  Text="{Binding VMax,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m/min" />
                                            </StackPanel>
                                        </StackPanel>
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最小值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}" Text="{Binding VMin,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m/min" />
                                            </StackPanel>
                                        </StackPanel>
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="平均值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}" Text="{Binding VAvg,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m/min" />
                                            </StackPanel>
                                        </StackPanel>
                                    </StackPanel>
                                </StackPanel>
                            
                        </Grid>

                        <lvc:CartesianChart Height="150"  DisableAnimations="True" Margin="5" Hoverable="False" DataTooltip="{x:Null}" >
                                <lvc:CartesianChart.Series>
                                    <lvc:LineSeries Values="{Binding VelocityValues}" Configuration="{Binding MapperTv}" />
                            </lvc:CartesianChart.Series>
                            <lvc:CartesianChart.AxisX>
                                <lvc:Axis LabelFormatter="{Binding DateTimeFormatter}" 
                                          Foreground="DarkSlateBlue"
                                          Sections="{Binding LimitValues,Converter={StaticResource limit2SectionsConv}}"
                                          />
                            </lvc:CartesianChart.AxisX>
                            <lvc:CartesianChart.AxisY>
                                <lvc:Axis LabelFormatter="{Binding YFormatter}"
                                          Foreground="DarkSlateBlue"
                                          />
                            </lvc:CartesianChart.AxisY>
                        </lvc:CartesianChart>

                    </StackPanel>

                </Border>
                <Border Style="{StaticResource CardBorderStyle}" 
                        Visibility="{Binding Is3D,Converter={StaticResource visbilityconv}, ConverterParameter=Collapsed}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource CardTitleStyle}"  Text="立体式膜距离增量趋势"/>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition/>
                                    <ColumnDefinition Width="auto"/>
                                </Grid.ColumnDefinitions>
                                <StackPanel Orientation="Horizontal">

                                    <StackPanel Orientation="Vertical" Margin="5">
                                        <TextBlock Style="{StaticResource TextBlockStyle_FieldHeaderEditable}" Text="牵引1速度" />
                                        <StackPanel Orientation="Horizontal">
                                            <TextBox Style="{StaticResource TextBoxStyle_FieldContent}" Text="{Binding Velocity1,StringFormat={}{0:F1}}" />
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m/min" />
                                        </StackPanel>
                                    </StackPanel>
                                    <Button Content="更新" Style="{StaticResource AccentedSquareButtonStyle2}" Command="{Binding UpdateFilmLength3DCmd}" 
                                        IsEnabled="{Binding Cfl.IsDataReady}"
                                    />
                                </StackPanel>
                                <StackPanel  Grid.Column="1" >
                                    <StackPanel Orientation="Horizontal">
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最大值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}" Text="{Binding FMax,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m" />
                                            </StackPanel>
                                        </StackPanel>
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="最小值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}" Text="{Binding FMin,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m" />
                                            </StackPanel>
                                        </StackPanel>
                                        <StackPanel Orientation="Horizontal" Margin="5">
                                            <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="平均值:" />
                                            <StackPanel Orientation="Horizontal">
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent}" Text="{Binding FAvg,StringFormat={}{0:F1}}"/>
                                                <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m" />
                                            </StackPanel>
                                        </StackPanel>
                                    </StackPanel>
                                </StackPanel>

                            </Grid>
                        
                        <lvc:CartesianChart 
                            Height="150"
                            DisableAnimations="True" Margin="5" Hoverable="False" DataTooltip="{x:Null}" >
                            <lvc:CartesianChart.Series>
      
                                <lvc:LineSeries Values="{Binding FilmLength3DValues}" Configuration="{Binding MapperTv}" />
                            </lvc:CartesianChart.Series>
                            <lvc:CartesianChart.AxisX>
                                <lvc:Axis LabelFormatter="{Binding DateTimeFormatter}" 
                                          Foreground="DarkSlateBlue"
                                          Sections="{Binding LimitValues,Converter={StaticResource limit2SectionsConv}}"
                                          />
                            </lvc:CartesianChart.AxisX>
                            <lvc:CartesianChart.AxisY>
                                <lvc:Axis LabelFormatter="{Binding YFormatter}"
                                          Foreground="DarkSlateBlue"
                                          />
                            </lvc:CartesianChart.AxisY>
                        </lvc:CartesianChart>
                    </StackPanel>
                </Border>
                <Border 
                    Style="{StaticResource CardBorderStyle}" 
                    Visibility="{Binding Is3D,Converter={StaticResource visbilityconv}, ConverterParameter=Collapsed}">
                    <StackPanel >
                        <TextBlock Style="{StaticResource CardTitleStyle}" Text="参数膜距离增量"/>
                        <StackPanel Orientation="Horizontal">
                                <Button Content="应用新数据" Style="{StaticResource AccentedSquareButtonStyle2}" Command="{Binding ApplyFilmLength3Cmd}"
                                    
                                        IsEnabled="{Binding Cfl.IsDataReady}"/>
                        </StackPanel>
                        <lvc:CartesianChart 
                            Height="150"
                                            DisableAnimations="True" 
                                            Margin="5" 
                                            Hoverable="False" DataTooltip="{x:Null}" 
                                            LegendLocation="Right"
                                            >
                                <lvc:CartesianChart.Series>
                                    <lvc:LineSeries Values="{Binding CurrFilmLength3D}" Title="正在使用"/>
                                <lvc:LineSeries Values="{Binding NewFilmLength3D}" Title="新数据"/>
                            </lvc:CartesianChart.Series>
                            <lvc:CartesianChart.AxisX>
                                <lvc:Axis Foreground="DarkSlateBlue" />
                            </lvc:CartesianChart.AxisX>
                            <lvc:CartesianChart.AxisY>
                                <lvc:Axis LabelFormatter="{Binding YFormatter}"
                                          Foreground="DarkSlateBlue"
                                          />
                            </lvc:CartesianChart.AxisY>
                        </lvc:CartesianChart>
                    </StackPanel>
                </Border>
                <Border Style="{StaticResource CardBorderStyle}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource CardTitleStyle}" Text="膜泡厚度横截面"/>
                        <StackPanel Orientation="Horizontal">

                            <StackPanel Orientation="Vertical" Margin="5">
                                <TextBlock Style="{StaticResource TextBlockStyle_FieldHeaderEditable}" Text="膜距离" />
                                <StackPanel Orientation="Horizontal">
                                        <TextBox HorizontalAlignment="Left" MaxWidth="150" Style="{StaticResource TextBoxStyle_FieldContent}" Text="{Binding FilmLength,StringFormat={}{0:F1}}" />
                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m" />
                                </StackPanel>
                            </StackPanel>
                            <Button Content="更新" Style="{StaticResource SquareButtonStyle2}" Command="{Binding UpdateFramesCmd}"
                                    IsEnabled="{Binding Cfl.IsDataReady}"
                                    />
                            <StackPanel Orientation="Vertical" Margin="5">
                                <TextBlock Style="{StaticResource TextBlockStyle_FieldHeaderEditable}" Text="查找范围" />
                                <StackPanel Orientation="Horizontal">
                                    <TextBox HorizontalAlignment="Left" MaxWidth="150" Style="{StaticResource TextBoxStyle_FieldContent}" Text="{Binding FLRange}" />
                                    <TextBlock Style="{StaticResource TextBlockStyle_FieldContent_mm}" Text="m" />
                                </StackPanel>
                            </StackPanel>
                                <Button Content="自动计算" Style="{StaticResource HighlightedSquareButtonStyle2}" Command="{Binding CalCmd}"
                                    IsEnabled="{Binding Cfl.IsCaling,Converter={StaticResource e2bconv},ConverterParameter={StaticResource False}}"
                                    />
                                <Button Content="应用" Style="{StaticResource AccentedSquareButtonStyle2}" Command="{Binding ApplyFilmLengthCmd}"/>
                                <StackPanel >
                                    <TextBlock Text="{Binding Cfl.Msg}" Style="{StaticResource TextBlockStyle_FieldContent_mm}"/>
                                </StackPanel>
                            </StackPanel>

                        <lvc:CartesianChart 
                            Height="200"
                            DisableAnimations="True" Margin="5" Hoverable="False" DataTooltip="{x:Null}" Series="{Binding FrameSeries}"
                            LegendLocation="Right"
                            >

                            <lvc:CartesianChart.AxisX>
                                <lvc:Axis 
                                          Foreground="{StaticResource axisLabelColor}"
                                    LabelFormatter="{Binding BoltNoFormatter}"
                                          >
                                    <lvc:Axis.Separator>
                                        <lvc:Separator Step="5" Stroke="{StaticResource axisSeparatorColor}"/>
                                    </lvc:Axis.Separator>
                                </lvc:Axis>
                            </lvc:CartesianChart.AxisX>
                            <lvc:CartesianChart.AxisY>
                                <lvc:Axis LabelFormatter="{Binding YFormatter}"
                                          Foreground="{StaticResource axisLabelColor}"
                                         >
                                    <lvc:Axis.Separator>
                                        <lvc:Separator Stroke="{StaticResource axisSeparatorColor}"/>
                                    </lvc:Axis.Separator>
                                </lvc:Axis>
                                
                            </lvc:CartesianChart.AxisY>
                        </lvc:CartesianChart>
                    </StackPanel>
                </Border>
                </StackPanel>
            </StackPanel>
        </ScrollViewer>
    </Grid>
</Page>