schangxiang@126.com
2025-11-04 f5ed29dc26c7cd952d56ec5721a2efc43cd25992
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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
102
103
104
105
<UserControl x:Class="XHandler.View.BacteriaProperty.CoatingProperty"
             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:XHandler.View.BacteriaProperty"
             xmlns:str="clr-namespace:XHandler.Properties"
             xmlns:ctrls="clr-namespace:XHandler.Controls"
             mc:Ignorable="d" 
             d:DesignHeight="450" d:DesignWidth="800" Loaded="UserControl_Loaded">
    <Grid>
        <ScrollViewer x:Name="scrollViewer">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="60"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="40"/>
                    <RowDefinition Height="auto"/>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="120"/>
                    <ColumnDefinition Width="*"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <TextBlock Grid.Row="0" Grid.Column="0" Text="{x:Static str:Resources.strCommandTag}" FontSize="16"
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="5 0 15 0"/>
                <TextBlock Grid.Row="1" Grid.Column="0" Text="{x:Static str:Resources.strCommandName}" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="5 0 15 0"/>
 
                <TextBox Grid.Row="0" x:Name="tbxCommandLabel" Grid.Column="1" Height="30" FontSize="16" VerticalContentAlignment="Center" BorderThickness="0" Background="{DynamicResource lightGrayBrush}"
                 Text="{Binding label, Mode=TwoWay}" IsEnabled="False"/>
                <!--<TextBox Grid.Row="1" Grid.Column="1" x:Name="tbxCommandName" Height="30" FontSize="16" VerticalContentAlignment="Center" BorderThickness="0" Background="{DynamicResource lightGrayBrush}"
                 Text="{Binding name}" TextChanged="tbxCommandName_TextChanged"/>-->
                <TextBox x:Name="tbxCommandName" Grid.Row="1" Grid.Column="1" Height="30" FontSize="16" VerticalContentAlignment="Center" Background="{DynamicResource lightGrayBrush}"
                     BorderThickness="0" TextChanged="tbxCommandName_TextChanged">
                    <TextBox.Text>
                        <Binding Path="name" Mode="TwoWay" UpdateSourceTrigger="PropertyChanged" NotifyOnValidationError="True" >
                            <Binding.ValidationRules>
                                <local:BacteriaPropertyValidationRule  ValidateType="1,6@[100]"/>
                            </Binding.ValidationRules>
                        </Binding>
                    </TextBox.Text>
                </TextBox>
                <TextBlock Grid.Row="1" Grid.Column="2" x:Name="nError" Text="{Binding  ElementName=tbxCommandName,Path=(Validation.Errors)[0].ErrorContent}" Foreground="Red" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Left" Margin="5 5 5 0"/>
 
                <TextBlock Grid.Row="2" Grid.Column="0" Text="{x:Static str:Resources.strArm}" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0 0 15 0"/>
                <ComboBox x:Name="cbArm" Grid.Row="2" Grid.Column="1" Height="30" BorderThickness="0" Background="{DynamicResource lightGrayBrush}"
                      DisplayMemberPath="device_arm_name" SelectedValuePath="device_arm_id" SelectionChanged="cbArm_SelectionChanged" IsEditable="False"/>
 
                <TextBlock Grid.Row="3" Grid.Column="0" Text="{x:Static str:Resources.strBacteriaHead}" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0 0 15 0"/>
                <TextBox x:Name="textboxArmHead" Grid.Row="3" Grid.Column="1" Height="30" FontSize="16" VerticalContentAlignment="Center" BorderThickness="0" Background="{DynamicResource lightGrayBrush}"
                         IsEnabled="False"/>
                <ctrls:TipsChannel x:Name="tipsChannel" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="2" TotalChannels="8" Height="70" Background="White" CanEdit="False"
                               HorizontalAlignment="Left" SelectedChangedEvent="tipsChannel_SelectedChangedEvent"/>
 
                <TextBlock Grid.Row="5" Grid.Column="0" Text="{x:Static str:Resources.strTablePosition}" FontSize="16"
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="5 0 15 0"/>
                <!--<ctrls:PromptTextBox x:Name="tbSelectTable" Grid.Row="4" Grid.Column="1" Height="30" FontSize="16" VerticalContentAlignment="Center"
                                 Watermark="{x:Static str:Resources.strPleaseSelect}" Background="{DynamicResource lightGrayBrush}" BorderThickness="0"
                                 Text="{Binding positionText}"/>-->
                <ComboBox x:Name="comboboxTablePos" Grid.Row="5" Grid.Column="1" Height="30" VerticalContentAlignment="Center" Background="{DynamicResource lightGrayBrush}" BorderThickness="0"
                      SelectionChanged="comboboxTablePos_SelectionChanged" IsEditable="False"/>
 
                <TextBlock Grid.Row="6" Grid.Column="0" Text="{x:Static str:Resources.strCoatingMode}" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0 0 15 0"/>
                <ComboBox x:Name="cbCoatingMode" Grid.Row="6" Grid.Column="1" Height="30" BorderThickness="0" Background="{DynamicResource lightGrayBrush}"
                          DisplayMemberPath="dropdown_name" SelectedValuePath="dropdown_id"  IsEditable="False"/>
 
                <TextBlock Grid.Row="7" Grid.Column="0" Text="{x:Static str:Resources.strWellPosition}" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0 0 15 0"/>
                <!--<ctrls:PromptTextBox Grid.Row="7" Grid.Column="1" x:Name="tbxWellPositionTips" Height="30" FontSize="16" VerticalContentAlignment="Center" BorderThickness="0"
                                 Watermark="{x:Static str:Resources.strWellPositionTips}" Background="{DynamicResource lightGrayBrush}"
                                 Text="{Binding wellarray}" TextChanged="tbxWellPositionTips_TextChanged"/>-->
                <ctrls:PromptTextBox x:Name="tbxWellPositionTips" Grid.Row="7" Grid.Column="1" Height="30" FontSize="16" VerticalContentAlignment="Center" Background="{DynamicResource lightGrayBrush}"
                     BorderThickness="0"  Watermark="{x:Static str:Resources.strWellPositionTips}" TextChanged="tbxWellPositionTips_TextChanged">
                    <TextBox.Text>
                        <Binding Path="wellarray" Mode="TwoWay" UpdateSourceTrigger="PropertyChanged" NotifyOnValidationError="True" >
                            <Binding.ValidationRules>
                                <local:BacteriaPropertyValidationRule  ValidateType="1"/>
                            </Binding.ValidationRules>
                        </Binding>
                    </TextBox.Text>
                </ctrls:PromptTextBox>
                <TextBlock Grid.Row="7" Grid.Column="2" x:Name="wptError" Text="{Binding  ElementName=tbxWellPositionTips,Path=(Validation.Errors)[0].ErrorContent}" Foreground="Red" FontSize="16" 
                   VerticalAlignment="Center" HorizontalAlignment="Right" Margin="5 5 5 0"/>
 
                <TextBlock Grid.Row="8" Grid.Column="1" Text="{x:Static str:Resources.strCommentSelectPlate}" FontSize="16" 
                   VerticalAlignment="Top" HorizontalAlignment="Left" Margin="0 5 15 0" Foreground="Gray"/>
                <ctrls:WellPlate x:Name="wellPlate" Grid.Row="9" Grid.Column="1" Grid.ColumnSpan="2" HorizontalAlignment="Left" Margin="0 5"
                             Selection="{Binding wellarray, Mode=TwoWay}"/>
 
            </Grid>
        </ScrollViewer>
    </Grid>
</UserControl>