PgScanCorr.xaml 22 KB
Newer Older
潘栩锋's avatar
潘栩锋 committed
1 2 3 4 5 6
<Page x:Class="FLY.Thick.Base.UI.PgScanCorr"
      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" 
      mc:Ignorable="d" 
7 8 9 10
      xmlns:local ="clr-namespace:FLY.Thick.Base.UI"
      xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
      xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls"
      d:DesignHeight="1500" d:DesignWidth="1280"
潘栩锋's avatar
潘栩锋 committed
11 12 13 14 15 16 17 18
      Background="WhiteSmoke"
	Title="Page_ScanCorr">
    <Page.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/FLY.Thick.Base.UI;component/Themes/Styles.xaml"/>
                <ResourceDictionary Source="pack://application:,,,/FLY.Thick.Base.UI;component/Converter/Dictionary_MyConv.xaml"/>
            </ResourceDictionary.MergedDictionaries>
19
            <local:PgScanCorrVmUt x:Key="viewModel" Enable="True"/>
潘栩锋's avatar
潘栩锋 committed
20 21
        </ResourceDictionary>
    </Page.Resources>
22
    <Grid Background="{StaticResource Brushes.Card.Background}" d:DataContext="{StaticResource viewModel}">
潘栩锋's avatar
潘栩锋 committed
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
        <Grid.RowDefinitions>
            <RowDefinition Height="auto" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <Grid Background="{StaticResource Brushes.TitleBar.Background}" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition Width="auto"/>
            </Grid.ColumnDefinitions>
            <StackPanel Orientation="Horizontal" >
                <Button Style="{StaticResource Styles.TitleBar.BackButton2}" Command="BrowseBack"/>
                <TextBlock Style="{StaticResource Styles.TitleBar.Text}" Text="机架修正"/>
            </StackPanel>
            <local:CtMicroGage Grid.Column="1" x:Name="mircoGage" Background="Transparent" VerticalAlignment="Bottom"/>
        </Grid>
        <ScrollViewer Grid.Row="1"
                      CanContentScroll="False" PanningMode="Both" >
            <StackPanel Margin="{StaticResource ControlMargin}">
                <Border Style="{StaticResource Styles.Card.Border}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource Styles.Card.Title}"
                                   Text="状态"/>
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
                        <StackPanel Orientation="Horizontal">
                            <StackPanel>
                                <TextBlock Style="{StaticResource Styles.Text.FieldHeader}" Text="使能"/>
                                <ToggleButton Style="{StaticResource Styles.ToggleButton.YESNO}" IsChecked="{Binding Enable}"/>
                            </StackPanel>
                        </StackPanel>
                        
                        
                        <StackPanel Orientation="Horizontal">
                            <StackPanel Margin="{StaticResource ControlMargin}">
                                <TextBlock >
                                    <TextBlock.Style>
                                        <Style TargetType="TextBlock" BasedOn="{StaticResource Styles.Text.FieldHeader}">
                                            <Setter Property="Text" Value="数据完整"/>
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding IsDataOK}" Value="false">
                                                    <Setter Property="Text" Value="数据与系统参数不一致,需要重新录制"/>
                                                    <Setter Property="Foreground" Value="{StaticResource Brushes.Validation}"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </TextBlock.Style>
                                </TextBlock>
潘栩锋's avatar
潘栩锋 committed
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
                            </StackPanel>
                        </StackPanel>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <StackPanel Orientation="Horizontal">
                                <Button  Content="开始录制" 
                                        Command="{Binding StartCmd}">
                                    <Button.Style>
                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square.Accent2}">
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding IsRunning}" Value="True">
                                                    <Setter Property="IsEnabled" Value="False"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                </Button>
                                <Button Content="停止" Background="{StaticResource Brushes.Validation}" 
                                        Command="{Binding StopCmd}">
                                    <Button.Style>
                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square.Accent2}">
                                            <Setter Property="IsEnabled" Value="False"/>
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding IsRunning}" Value="True">
                                                    <Setter Property="IsEnabled" Value="True"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                </Button>
                                <StackPanel Orientation="Horizontal">
102
                                    <TextBlock Style="{StaticResource Styles.Text.FieldContent.Unit}" >
潘栩锋's avatar
潘栩锋 committed
103 104 105 106 107 108 109 110 111 112
                                        组<Run Text="{Binding CurrGroupIndex}"/>
                                    </TextBlock>
                                    <Grid Width="100"/>
                                    <TextBlock Style="{StaticResource Styles.Text.FieldContent}" 
                                                           Text="{Binding Progress}"/>
                                    <TextBlock Style="{StaticResource Styles.Text.FieldContent.Unit}" 
                                                           Text="%"/>
                                </StackPanel>

                            </StackPanel>
113

潘栩锋's avatar
潘栩锋 committed
114 115 116 117 118 119 120 121
                        </Grid>

                    </StackPanel>
                </Border>
                <Border Style="{StaticResource Styles.Card.Border}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource Styles.Card.Title}"
                                   Text="扫描图"/>
122 123 124 125 126 127 128
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <StackPanel Orientation="Horizontal">
                                <Button  Content="组0" 
潘栩锋's avatar
潘栩锋 committed
129
                                        Command="{Binding SelectedGroup0Cmd}">
130 131 132 133 134 135 136 137 138 139 140
                                    <Button.Style>
                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square2}">
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding SelectedGroupIndex}" Value="0">
                                                    <Setter Property="Background" Value="{StaticResource Brushes.Activity}"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                </Button>
                                <Button  Content="组1" 
潘栩锋's avatar
潘栩锋 committed
141
                                        Command="{Binding SelectedGroup1Cmd}">
142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
                                    <Button.Style>
                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square2}">
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding SelectedGroupIndex}" Value="1">
                                                    <Setter Property="Background" Value="{StaticResource Brushes.Activity}"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                </Button>
                            </StackPanel>

                            <StackPanel Orientation="Horizontal" Grid.Column="1">
                                <Button  Content="删除" Style="{StaticResource Styles.Button.Square2}"
                                        Command="{Binding ClearCmd}"/>

                            </StackPanel>
                        </Grid>
                        
潘栩锋's avatar
潘栩锋 committed
161

162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <StackPanel Orientation="Horizontal">
                                <TextBlock Style="{StaticResource Styles.Text.FieldContent.Unit}" Text="平均:"/>
                                <TextBlock Style="{StaticResource Styles.Text.FieldContent}" 
                                                           Text="{Binding AvgAd}"/>
                            </StackPanel>
                            <ItemsControl Grid.Column="1" ItemsSource="{Binding SeriesInfos}" Margin="{StaticResource ControlMargin}">
                                <ItemsControl.ItemsPanel>
                                    <ItemsPanelTemplate>
                                        <WrapPanel Orientation="Horizontal" />
                                    </ItemsPanelTemplate>
                                </ItemsControl.ItemsPanel>
                                <ItemsControl.ItemTemplate>
                                    <DataTemplate>
                                        <Border x:Name="bd" Background="{Binding Color}" BorderBrush="LightGray" BorderThickness="2" Margin="2" Padding="10,5" >
                                            <TextBlock x:Name="tb" Text="{Binding Name}" FontSize="15" Foreground="WhiteSmoke" FontWeight="Bold"  VerticalAlignment="Center" HorizontalAlignment="Center"  />
                                        </Border>
                                    </DataTemplate>
                                </ItemsControl.ItemTemplate>
                            </ItemsControl>
                        </Grid>
潘栩锋's avatar
潘栩锋 committed
187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228
                        
                        
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="auto"/>
                                <RowDefinition Height="auto"/>
                                <RowDefinition/>
                            </Grid.RowDefinitions>
                            <Grid Grid.Row="2" Margin="{StaticResource ControlMargin}">
                                <lvc:CartesianChart x:Name="chart1"  Height="350" 
                                            DisableAnimations="True" Hoverable="False" DataTooltip="{x:Null}"
                                            MouseMove="UIElement_OnMouseMove" MouseDown="UIElement_MouseDown" MouseUp="UIElement_MouseUp"
                                            Series="{Binding Series}"
                                                    
                                            >
                                    <lvc:CartesianChart.AxisX>
                                        <lvc:Axis LabelFormatter="{Binding XFormatter}" 
                                                  Foreground="{StaticResource MahApps.Brushes.ThemeForeground}"
                                                  MaxValue="{Binding XMax}" MinValue="{Binding XMin}" >
                                            <lvc:Axis.Separator>
                                                <lvc:Separator Stroke="LightGray"/>
                                            </lvc:Axis.Separator>
                                        </lvc:Axis>
                                    </lvc:CartesianChart.AxisX>
                                    <lvc:CartesianChart.AxisY>
                                        <lvc:Axis Foreground="{StaticResource MahApps.Brushes.ThemeForeground}"
                                                  LabelFormatter="{Binding YFormatter}" 
                                                  MaxValue="{Binding YMax}" MinValue="{Binding YMin}">
                                            <lvc:Axis.Separator>
                                                <lvc:Separator Stroke="LightGray"/>
                                            </lvc:Axis.Separator>
                                        </lvc:Axis>
                                    </lvc:CartesianChart.AxisY>
                                </lvc:CartesianChart>

                            </Grid>
                            <Controls:RangeSlider Grid.Row="2" Grid.Column="1"
229
                                                  Margin="{StaticResource ControlMargin}"
潘栩锋's avatar
潘栩锋 committed
230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250
                                                  Controls:SliderHelper.ChangeValueBy="LargeChange"
                                                  Controls:SliderHelper.EnableMouseWheel="MouseHover"
                                                  AutoToolTipPlacement="TopLeft"
                                                  Orientation="Vertical"
                                                  LargeChange="10"
                                                  SmallChange="1"
                                                  Maximum="{Binding YRangeSliderMax}"
                                                  Minimum="{Binding YRangeSliderMin}"
                                                  
                                                  LowerValue="{Binding YMin}"
                                                  UpperValue="{Binding YMax}" />

                        </Grid>
                    </StackPanel>
                </Border>
                <Border Style="{StaticResource Styles.Card.Border}" >
                    <StackPanel>
                        <TextBlock Style="{StaticResource Styles.Card.Title}"
                                   Text="修改"/>
                        <TabControl 
                                    Margin="{StaticResource ControlMargin}"
251
                            MinHeight="150"
潘栩锋's avatar
潘栩锋 committed
252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282
                            Controls:TabControlHelper.Underlined="TabPanel"
                            Controls:TabControlHelper.UnderlinePlacement="Bottom"
                            Controls:HeaderedControlHelper.HeaderFontSize="18">
                            <TabItem Header="平滑滤波方式">
                                <Grid>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition/>
                                        <ColumnDefinition Width="auto"/>
                                    </Grid.ColumnDefinitions>
                                    <StackPanel>

                                        <StackPanel Orientation="Horizontal">
                                            <StackPanel Margin="{StaticResource ControlMargin}">
                                                <TextBlock Style="{StaticResource Styles.Text.FieldHeader.Editable}" Text="平滑" />
                                                <StackPanel Orientation="Horizontal" >
                                                    <TextBox Style="{StaticResource Styles.Text.FieldContent.Input.Card}"
                                                        Text="{Binding SmoothFactor}" />
                                                </StackPanel>
                                            </StackPanel>
                                            <StackPanel Orientation="Horizontal">
                                                <Button Content="生成" Command="{Binding CreateCorrBySmoothCmd}" >
                                                    <Button.Style>
                                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square.Accent2}">

                                                        </Style>
                                                    </Button.Style>
                                                </Button>
                                            </StackPanel>
                                        </StackPanel>
                                    </StackPanel>

283
                                    
潘栩锋's avatar
潘栩锋 committed
284 285 286 287 288 289 290 291 292 293 294 295
                                </Grid>
                            </TabItem>
                            <TabItem Header="关键点方式">
                                <Grid>
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition/>
                                        <ColumnDefinition Width="auto"/>
                                    </Grid.ColumnDefinitions>
                                    <StackPanel>

                                        <StackPanel Orientation="Horizontal">
                                            <StackPanel Orientation="Horizontal">
296
                                                <Button Content="添加" Command="{Binding AddKeyPointModeCmd}" >
潘栩锋's avatar
潘栩锋 committed
297
                                                    <Button.Style>
298 299 300 301 302 303
                                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square2}">
                                                            <Style.Triggers>
                                                                <DataTrigger Binding="{Binding KpSelectMode}" Value="{x:Static local:KeyPointsSelectMode.Add}" >
                                                                    <Setter Property="IsEnabled" Value="False"/>
                                                                </DataTrigger>
                                                            </Style.Triggers>
潘栩锋's avatar
潘栩锋 committed
304 305 306
                                                        </Style>
                                                    </Button.Style>
                                                </Button>
307 308 309 310 311 312 313 314 315 316 317 318 319 320
                                                <Button Content="删除" Command="{Binding RemoveKeyPointModeCmd}" >
                                                    <Button.Style>
                                                        <Style TargetType="Button" BasedOn="{StaticResource Styles.Button.Square2}">
                                                            <Style.Triggers>
                                                                <DataTrigger Binding="{Binding KpSelectMode}" Value="{x:Static local:KeyPointsSelectMode.Remove}" >
                                                                    <Setter Property="IsEnabled" Value="False"/>
                                                                </DataTrigger>
                                                            </Style.Triggers>
                                                        </Style>
                                                    </Button.Style>
                                                </Button>
                                                <Button Style="{StaticResource Styles.Button.Square.Accent2}" 
                                                        Content="生成" Command="{Binding CreateCorrByKeyPointCmd}" />

潘栩锋's avatar
潘栩锋 committed
321 322 323 324 325 326
                                            </StackPanel>
                                        </StackPanel>
                                    </StackPanel>
                                </Grid>
                            </TabItem>
                        </TabControl>
327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition Width="auto"/>
                            </Grid.ColumnDefinitions>
                            <StackPanel Orientation="Horizontal">
                                <Button Content="应用" Style="{StaticResource Styles.Button.Square.Accent2}" Command="{Binding SetCorrDataCmd}"/>
                            </StackPanel>
                            
                            <StackPanel Grid.Column="1"
                                        Orientation="Horizontal">
                                <Button Style="{StaticResource Styles.Button.Square2}" Content="导出" 
                                        Command="{Binding SaveXlsxCmd}"/>
                                <Button Style="{StaticResource Styles.Button.Square2}" Content="导入" 
                                        Command="{Binding LoadXlsxCmd}"/>
                            </StackPanel>
                        </Grid>
                        
潘栩锋's avatar
潘栩锋 committed
345 346 347 348 349 350
                    </StackPanel>
                </Border>
            </StackPanel>
        </ScrollViewer>
    </Grid>
</Page>