| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- <UserControl x:Class="TeamAAS_VP.Views.Setting.AddScanner"
- 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:local="clr-namespace:TeamAAS_VP.Views.Setting"
- xmlns:prism="http://prismlibrary.com/"
- prism:ViewModelLocator.AutoWireViewModel="True"
- xmlns:enums="clr-namespace:TeamAAS_VP.Enums"
- xmlns:sys="clr-namespace:System;assembly=mscorlib"
- xmlns:valRules="clr-namespace:TeamAAS_VP.Identity"
- xmlns:lex="http://wpflocalizeextension.codeplex.com"
- lex:LocalizeDictionary.DesignCulture="zh-CN"
- lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
- lex:ResxLocalizationProvider.DefaultDictionary="Lang"
- xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
- >
- <prism:Dialog.WindowStyle>
- <Style TargetType="Window">
- <Setter Property="prism:Dialog.WindowStartupLocation"
- Value="CenterScreen" />
- <Setter Property="WindowStyle"
- Value="None" />
- <Setter Property="AllowDrop"
- Value="True" />
- <Setter Property="BorderThickness"
- Value="0" />
- <Setter Property="ShowInTaskbar"
- Value="False" />
- <Setter Property="SizeToContent"
- Value="WidthAndHeight" />
- <Setter Property="WindowState"
- Value="Normal" />
- <Setter Property="Topmost"
- Value="True" />
- </Style>
- </prism:Dialog.WindowStyle>
- <UserControl.Resources>
- <ObjectDataProvider x:Key="eRobotBrand"
- MethodName="GetNames"
- ObjectType="{x:Type sys:Enum}">
- <ObjectDataProvider.MethodParameters>
- <x:Type TypeName="enums:RobotBrand" />
- </ObjectDataProvider.MethodParameters>
- </ObjectDataProvider>
- <ObjectDataProvider x:Key="eTCPConnectType"
- MethodName="GetNames"
- ObjectType="{x:Type sys:Enum}">
- <ObjectDataProvider.MethodParameters>
- <x:Type TypeName="enums:TCPConnectType" />
- </ObjectDataProvider.MethodParameters>
- </ObjectDataProvider>
- <ObjectDataProvider x:Key="eTerminator"
- MethodName="GetNames"
- ObjectType="{x:Type sys:Enum}">
- <ObjectDataProvider.MethodParameters>
- <x:Type TypeName="enums:Terminator" />
- </ObjectDataProvider.MethodParameters>
- </ObjectDataProvider>
- <ObjectDataProvider x:Key="eDataEncoding"
- MethodName="GetNames"
- ObjectType="{x:Type sys:Enum}">
- <ObjectDataProvider.MethodParameters>
- <x:Type TypeName="enums:DataEncoding" />
- </ObjectDataProvider.MethodParameters>
- </ObjectDataProvider>
- </UserControl.Resources>
- <Grid HorizontalAlignment="Center">
- <Grid.RowDefinitions>
- <RowDefinition Height="*" />
- <RowDefinition Height="50" />
- </Grid.RowDefinitions>
- <!--参数详情-->
- <Grid Margin="20,20">
- <Grid.RowDefinitions>
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- <RowDefinition />
- </Grid.RowDefinitions>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="50*" />
- <ColumnDefinition Width="50*" />
- </Grid.ColumnDefinitions>
- <!--id-->
- <TextBlock Text="Id:"
- Grid.Row="0"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <TextBlock x:Name="txt_Id"
- Text="{Binding Scanner.Id,Mode=TwoWay}"
- Grid.Row="0"
- Grid.Column="1"
- Margin="10,0"
- HorizontalAlignment="Left"
- VerticalAlignment="Center" />
- <!--名称-->
- <TextBlock Text="{lex:Loc 名称}"
- Grid.Row="1"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <TextBox x:Name="txt_Name"
- Grid.Row="1"
- Grid.Column="1"
- Margin="10,0"
- Width="{Binding ElementName=txt_Id,Path=ActualWidth}"
- MinWidth="80"
- TextAlignment="Center"
- HorizontalAlignment="Left"
- VerticalAlignment="Center">
- <TextBox.Text>
- <Binding Path="Scanner.ScannerName"
- Mode="TwoWay">
- <Binding.ValidationRules>
- <valRules:NameValidationRule />
- </Binding.ValidationRules>
- </Binding>
- </TextBox.Text>
- </TextBox>
- <!--通讯方式-->
- <TextBlock Text="{lex:Loc 通讯方式}"
- Grid.Row="3"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <ComboBox Text="{Binding Scanner.ConnectType,Mode=TwoWay}"
- Grid.Row="3"
- Grid.Column="1"
- Margin="10,0"
- Width="{Binding ElementName=txt_Id,Path=ActualWidth}"
- MinWidth="80"
- HorizontalContentAlignment="Center"
- ItemsSource="{Binding Source={StaticResource eTCPConnectType}}"
- HorizontalAlignment="Left"
- VerticalAlignment="Center" />
- <!--IP地址-->
- <TextBlock Text="IP:"
- Grid.Row="4"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <TextBox x:Name="txt_IP"
- Grid.Row="4"
- Grid.Column="1"
- Margin="10,0"
- Width="{Binding ElementName=txt_Id,Path=ActualWidth}"
- MinWidth="80"
- TextAlignment="Center"
- HorizontalAlignment="Left"
- VerticalAlignment="Center">
- <TextBox.Text>
- <Binding Path="Scanner.IP"
- Mode="TwoWay">
- <Binding.ValidationRules>
- <valRules:IPValidationRule />
- </Binding.ValidationRules>
- </Binding>
- </TextBox.Text>
- </TextBox>
- <!--端口号-->
- <TextBlock Text="Port:"
- Grid.Row="5"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <TextBox x:Name="txt_Port"
- Grid.Row="5"
- Grid.Column="1"
- Margin="10,0"
- Width="{Binding ElementName=txt_Id,Path=ActualWidth}"
- MinWidth="80"
- TextAlignment="Center"
- HorizontalAlignment="Left"
- VerticalAlignment="Center">
- <TextBox.Text>
- <Binding Path="Scanner.Port"
- Mode="TwoWay">
- <Binding.ValidationRules>
- <valRules:PortValidationRule />
- </Binding.ValidationRules>
- </Binding>
- </TextBox.Text>
- </TextBox>
- <!--结束符-->
- <TextBlock Text="{lex:Loc 结束符}"
- Grid.Row="6"
- Grid.Column="0"
- Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
- HorizontalAlignment="Right"
- VerticalAlignment="Center" />
- <ComboBox Text="{Binding Scanner.Terminator,Mode=TwoWay}"
- Grid.Row="6"
- Grid.Column="1"
- Margin="10,0"
- Width="{Binding ElementName=txt_Id,Path=ActualWidth}"
- MinWidth="80"
- HorizontalContentAlignment="Center"
- ItemsSource="{Binding Source={StaticResource eTerminator}}"
- HorizontalAlignment="Left"
- VerticalAlignment="Center" />
- </Grid>
- <StackPanel Grid.Row="1"
- Orientation="Horizontal"
- HorizontalAlignment="Right">
- <Button Height="30"
- materialDesign:ButtonAssist.CornerRadius="10"
- ToolTip="{lex:Loc 确定}"
- Command="{Binding ConfirmCommand}">
- <TextBlock Text="{lex:Loc 确定}" />
- <Button.Style>
- <Style TargetType="Button"
- BasedOn="{StaticResource MaterialDesignRaisedButton}">
- <Style.Triggers>
- <MultiDataTrigger>
- <MultiDataTrigger.Conditions>
- <!-- 当且仅当IP地址合规且其他条件满足时,启用按钮 -->
- <Condition Binding="{Binding ElementName=txt_IP, Path=(Validation.HasError)}"
- Value="False" />
- <Condition Binding="{Binding ElementName=txt_Name, Path=(Validation.HasError)}"
- Value="False" />
- <Condition Binding="{Binding ElementName=txt_Port, Path=(Validation.HasError)}"
- Value="False" />
- </MultiDataTrigger.Conditions>
- <Setter Property="IsEnabled"
- Value="True" />
- </MultiDataTrigger>
- </Style.Triggers>
- </Style>
- </Button.Style>
- </Button>
- <Button Height="30"
- Margin="20,0"
- materialDesign:ButtonAssist.CornerRadius="10"
- Style="{StaticResource MaterialDesignRaisedButton}"
- ToolTip="{lex:Loc 取消}"
- Command="{Binding CancelCommand}">
- <TextBlock Text="{lex:Loc 取消}" />
- </Button>
- </StackPanel>
- </Grid>
- </UserControl>
|