| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504 |
- <UserControl x:Class="TeamAAS_VP.Views.Product.CameraParams"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:prism="http://prismlibrary.com/"
- xmlns:wf="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
- xmlns:vp="clr-namespace:Cognex.VisionPro;assembly=Cognex.VisionPro.Controls"
- xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- xmlns:vm="clr-namespace:TeamAAS_VP.ViewModels.Product"
- xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
- xmlns:sys="clr-namespace:System;assembly=mscorlib"
- xmlns:uControl="clr-namespace:TeamAAS_VP.Controls"
- xmlns:localbehaviors="clr-namespace:TeamAAS_VP.Behaviors"
- xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
- xmlns:lex="http://wpflocalizeextension.codeplex.com"
- lex:LocalizeDictionary.DesignCulture="zh-CN"
- lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
- lex:ResxLocalizationProvider.DefaultDictionary="Lang"
- prism:ViewModelLocator.AutoWireViewModel="True"
- mc:Ignorable="d"
- d:DataContext="{d:DesignInstance Type=vm:CameraParamsViewModel}"
- d:Height="600"
- d:Width="1024"
- d:Background="White"
- FontFamily="{DynamicResource DefaultFont}">
- <b:Interaction.Triggers>
- <b:EventTrigger EventName="Loaded">
- <b:InvokeCommandAction Command="{Binding LoadedCommand}" />
- </b:EventTrigger>
- </b:Interaction.Triggers>
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="auto" />
- <RowDefinition Height="*" />
- <RowDefinition Height="auto" />
- </Grid.RowDefinitions>
- <Button Grid.Row="0"
- Content="{materialDesign:PackIcon Kind=ArrowLeftCircle}"
- Width="50"
- HorizontalAlignment="Left"
- VerticalAlignment="Top"
- ToolTip="{lex:Loc 返回}"
- Style="{StaticResource MaterialDesignIconButton}"
- Command="{Binding BackCommand}" />
- <StackPanel Grid.Row="0"
- Orientation="Horizontal"
- Margin="50,0"
- VerticalAlignment="Center">
- <materialDesign:PackIcon Kind="CubeOutline"
- Width="30"
- Height="30" />
- <TextBlock Text="{Binding SelectProduct.Name}"
- VerticalAlignment="Center" />
- <TextBlock Text="{lex:Loc 图像源配置,Converter={StaticResource StringFormatConverter},ConverterParameter=' - {0}'}"
- VerticalAlignment="Center" />
- </StackPanel>
- <Border BorderThickness="1,1,1,1"
- VerticalAlignment="Bottom"
- Height="1">
- <Border.BorderBrush>
- <VisualBrush>
- <VisualBrush.Visual>
- <Rectangle StrokeDashArray="4 4"
- Stroke="LightGray"
- StrokeThickness="1"
- Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}}, Path=ActualWidth}"
- Height="{Binding RelativeSource={RelativeSource AncestorType={x:Type Border}}, Path=ActualHeight}" />
- </VisualBrush.Visual>
- </VisualBrush>
- </Border.BorderBrush>
- </Border>
- <materialDesign:DrawerHost Grid.Row="1"
- OpenMode="Standard"
- x:Name="DrawerHost"
- d:IsRightDrawerOpen="true"
- IsEnabled="{Binding IsAllowEdit}">
- <materialDesign:DrawerHost.RightDrawerContent>
- <uControl:RobotManual x:Name="robotManual"
- Visibility="{Binding IsHaveRobot,Converter={StaticResource BooleanToVisibilityConverter}}" />
- </materialDesign:DrawerHost.RightDrawerContent>
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="auto" />
- <ColumnDefinition Width="*" />
- </Grid.ColumnDefinitions>
- <Expander Grid.Column="0"
- ExpandDirection="Right"
- Background="Transparent">
- <Expander.Header>
- <TextBlock RenderTransformOrigin=".5,.5"
- Text="Navigation Description">
- <TextBlock.LayoutTransform>
- <RotateTransform Angle="90" />
- </TextBlock.LayoutTransform>
- </TextBlock>
- </Expander.Header>
- <ScrollViewer>
- <StackPanel Margin="8,24,16,24"
- Orientation="Vertical">
- <Image Source="pack://application:,,,/TeamAAS-VP;component/Resources/Images/4图像采集.png"
- Stretch="Uniform"
- Width="350"
- HorizontalAlignment="Center"
- VerticalAlignment="Top" />
- <TextBlock Text="{lex:Loc 图像源配置}" />
- <TextBlock Foreground="Gray"
- TextWrapping="Wrap"
- Text="{lex:Loc 图像源配置描述}" />
- </StackPanel>
- </ScrollViewer>
- </Expander>
- <Grid Grid.Column="1"
- >
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="auto" />
- </Grid.ColumnDefinitions>
-
- <Grid Grid.Column="1">
-
- <Grid.RowDefinitions>
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="35" />
- <RowDefinition Height="350" />
- </Grid.RowDefinitions>
-
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="auto" />
- <ColumnDefinition Width="*" />
- </Grid.ColumnDefinitions>
-
-
-
-
- <ToggleButton Grid.Column="1"
- HorizontalAlignment="Right"
- VerticalAlignment="Top"
- Visibility="{Binding IsHaveRobot,Converter={StaticResource BooleanToVisibilityConverter}}"
- materialDesign:ToggleButtonAssist.OnContent="{materialDesign:PackIcon Kind=ArrowRight}"
- Content="{materialDesign:PackIcon Kind=RobotIndustrial}"
- Style="{StaticResource MaterialDesignActionToggleButton}"
- ToolTip="{lex:Loc 机器人步进}"
- Margin="5,0"
- IsChecked="{Binding IsRightDrawerOpen,ElementName=DrawerHost}" />
-
- <TextBlock Text="{lex:Loc 相机参数设置}"
- Grid.Row="1"
- FontWeight="Bold"
- Margin="10"
- Grid.ColumnSpan="2" />
-
- <TextBlock Grid.Row="2"
-
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 拍照次数,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="2"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N0} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding PhotoCount,Mode=TwoWay}" />
-
-
-
-
-
-
-
-
- <TextBlock Grid.Row="3"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Text="{lex:Loc 曝光时间,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="3"
- Grid.Column="1"
- Margin="5"
- Minimum="35"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N0} us"
- Value="{Binding ExposureTime,Mode=TwoWay}" />
- <TextBlock Grid.Row="4"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Text="{lex:Loc 增益,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="4"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="63"
- Interval="1"
- StringFormat="{}{0:N2} db"
- Value="{Binding Gain,Mode=TwoWay}" />
- <TextBlock Grid.Row="5"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 曝光2时间,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="5"
- Grid.Column="1"
- Margin="5"
- Minimum="35"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N0} us"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding ExposureTime2,Mode=TwoWay}" />
- <TextBlock Grid.Row="6"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 增益2,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="6"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="63"
- Interval="1"
- StringFormat="{}{0:N2} db"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Gain2,Mode=TwoWay}" />
- <TextBlock Grid.Row="7"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第一次拍照光源1,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="7"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N0} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo1Light1,Mode=TwoWay}" />
- <TextBlock Grid.Row="8"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第一次拍照光源2,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="8"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N2} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo1Light2,Mode=TwoWay}" />
- <TextBlock Grid.Row="9"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第一次拍照光源3,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="9"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N2} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo1Light3,Mode=TwoWay}" />
- <TextBlock Grid.Row="10"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第二次拍照光源1,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="10"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N0} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo2Light1,Mode=TwoWay}" />
- <TextBlock Grid.Row="11"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第二次拍照光源2,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="11"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N2} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo2Light2,Mode=TwoWay}" />
- <TextBlock Grid.Row="12"
- Grid.Column="0"
- Margin="5"
- VerticalAlignment="Center"
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Text="{lex:Loc 第二次拍照光源3,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
- <mah:NumericUpDown Grid.Row="12"
- Grid.Column="1"
- Margin="5"
- Minimum="0"
- Maximum="999985"
- Interval="1"
- StringFormat="{}{0:N2} "
- Visibility="{Binding IsPhotosUse,Converter={StaticResource BooleanToVisibilityConverter}}"
- Value="{Binding Photo2Light3,Mode=TwoWay}" />
- <ScrollViewer Grid.Row="15" Grid.ColumnSpan="2" VerticalScrollBarVisibility="Visible">
- <!-- 光源通道列表与调节 -->
- <StackPanel Orientation="Vertical" Margin="5" >
- <TextBlock Text="{lex:Loc 光源通道列表}"
- FontWeight="Bold" />
- <ItemsControl ItemsSource="{Binding SelectProcedure.LightChannels}">
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="auto" />
- <RowDefinition Height="auto" />
- <RowDefinition Height="auto" />
- </Grid.RowDefinitions>
- <TextBlock Width="120"
- Grid.Row="0"
- HorizontalAlignment="Left"
- VerticalAlignment="Center">
- <TextBlock.Text>
- <MultiBinding StringFormat="{}{0} . {1}">
- <Binding Path="GlobalIndex" />
- <Binding Path="Name" />
- </MultiBinding>
- </TextBlock.Text>
- </TextBlock>
- <StackPanel Grid.Row="1"
- Orientation="Horizontal"
- Margin="0,4">
- <Slider Minimum="0"
- Maximum="255"
- Width="200"
- Value="{Binding DefaultBrightness,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}">
- <b:Interaction.Behaviors>
- <localbehaviors:SliderUserInteractionBehavior UserInteractionCommand="{Binding DataContext.SetChannelBrightnessCommand, RelativeSource={RelativeSource AncestorType=UserControl}}"
- CommandParameter="{Binding}" />
- </b:Interaction.Behaviors>
- </Slider>
- <TextBlock Text="{Binding DefaultBrightness}"
- Width="40"
- VerticalAlignment="Center"
- Margin="6,0" />
- </StackPanel>
- <StackPanel Grid.Row="2"
- Orientation="Horizontal"
- HorizontalAlignment="Right"
- Margin="0,4">
- <Button Content="打开"
- Command="{Binding DataContext.TurnOnCommand, RelativeSource={RelativeSource AncestorType=UserControl}}"
- CommandParameter="{Binding}"
- Margin="0,0,8,0" />
- <Button Content="关闭"
- Command="{Binding DataContext.TurnOffCommand, RelativeSource={RelativeSource AncestorType=UserControl}}"
- CommandParameter="{Binding}"
- Margin="0,0,8,0" />
- </StackPanel>
- </Grid>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
- </StackPanel>
- </ScrollViewer>
-
- </Grid>
-
-
- <wf:WindowsFormsHost Grid.Column="0"
- Margin="0,40">
- <vp:CogRecordDisplay x:Name="display" />
- </wf:WindowsFormsHost>
- <StackPanel Orientation="Horizontal"
- Grid.Column="0"
- Margin="5"
- Visibility="{Binding IsHaveFeeder,Converter={StaticResource BooleanToVisibilityConverter}}"
- VerticalAlignment="Top">
- <TextBlock Text="{lex:Loc 光源亮度,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
- Margin="5,0"
- VerticalAlignment="Center" />
- <Button Width="25"
- Height="25"
- Margin="5,0"
- Content="{materialDesign:PackIcon Kind=Minus}"
- Style="{StaticResource MaterialDesignIconForegroundButton}"
- Command="{Binding LightValueSubCommand}" />
- <Slider x:Name="lightSlider"
- Maximum="100"
- Minimum="1"
- Width="100"
- Value="{Binding SelectProcedure.LightValue}"
- Height="20"
- VerticalAlignment="Center">
- <b:Interaction.Triggers>
- <b:EventTrigger EventName="ValueChanged">
- <b:InvokeCommandAction Command="{Binding LightValueChangedCommand}"
- CommandParameter="{Binding ElementName=lightSlider,Path=Value}" />
- </b:EventTrigger>
- </b:Interaction.Triggers>
- </Slider>
- <Button Width="25"
- Height="25"
- Margin="5,0"
- Content="{materialDesign:PackIcon Kind=Plus}"
- Style="{StaticResource MaterialDesignIconForegroundButton}"
- Command="{Binding LightValueAddCommand}" />
- <TextBlock Text="{Binding ElementName=lightSlider,Path=Value,Mode=TwoWay,StringFormat={}{0:F0}}"
- VerticalAlignment="Center" />
- </StackPanel>
- <StackPanel Grid.Column="0"
- HorizontalAlignment="Left"
- VerticalAlignment="Bottom"
- Orientation="Horizontal">
- <Button Grid.Column="0"
- Content="{lex:Loc 开始采集}"
- IsEnabled="{Binding IsAllowEdit}"
- MinWidth="100"
- materialDesign:ButtonAssist.CornerRadius="10"
- Style="{StaticResource MaterialDesignRaisedButton}"
- Command="{Binding StartGrabbingCommand}" />
- <Button Grid.Column="0"
- Content="{lex:Loc 停止采集}"
- IsEnabled="{Binding IsAllowEdit}"
- MinWidth="100"
- Margin="10,0"
- materialDesign:ButtonAssist.CornerRadius="10"
- Style="{StaticResource MaterialDesignRaisedButton}"
- Command="{Binding StopGrabbingCommand}" />
- <TextBlock Text="{Binding Message}"
- VerticalAlignment="Center"
- Foreground="Gray" />
- </StackPanel>
- </Grid>
- </Grid>
- </materialDesign:DrawerHost>
- <StackPanel Grid.Row="2"
- Orientation="Horizontal"
- HorizontalAlignment="Center"
- VerticalAlignment="Center"
- Margin="20">
- <Button Content="{lex:Loc 下一步}"
- IsEnabled="{Binding IsAllowEdit}"
- MinWidth="100"
- HorizontalAlignment="Center"
- VerticalAlignment="Center"
- materialDesign:ButtonAssist.CornerRadius="10"
- Style="{StaticResource MaterialDesignRaisedButton}"
- Command="{Binding NextCommand}" />
- </StackPanel>
- </Grid>
- </UserControl>
|