| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214 | <UserControl x:Class="VirgoUI.Client.Models.PMs.LeakCheckView"             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:i="http://schemas.microsoft.com/expression/2010/interactivity"             xmlns:cal="http://www.caliburn.org"             xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation"             xmlns:local="clr-namespace:VirgoUI.Client.Models.PMs"             mc:Ignorable="d" d:DesignHeight ="770" d:DesignWidth="1920" IsEnabled="{Binding PageEnabled}">    <Grid>        <Grid.ColumnDefinitions>            <ColumnDefinition Width="*"/>            <ColumnDefinition Width="380"/>            <ColumnDefinition Width="5"/>            <ColumnDefinition Width="1200"/>            <ColumnDefinition Width="*"/>        </Grid.ColumnDefinitions>        <Grid.RowDefinitions>            <RowDefinition Height="50"/>            <RowDefinition Height="*"/>        </Grid.RowDefinitions>        <Grid Grid.Column="1" Grid.Row="1">            <Grid.ColumnDefinitions>                <ColumnDefinition Width="160"/>                <ColumnDefinition Width="230"/>            </Grid.ColumnDefinitions>            <Grid.RowDefinitions>                <RowDefinition Height="0"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>                <RowDefinition Height="24"/>            </Grid.RowDefinitions>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="1" Grid.ColumnSpan="2" Padding="5,1">                <TextBlock Text="Leak Check Settings" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" HorizontalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="2" Padding="5,1">                <TextBlock Text="PumpingTime (s)" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="2" Grid.Column="1" Padding="5,1">                <ctrl:TextBoxEx Text="{Binding Path=LeakCheckPumpDownTimeSetPoint}" TextSaved="{Binding LeakCheckPumpDownTimeSetPointSaved, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"   EditBoxMode="UnSignDecimal" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="3" Padding="5,1">                <TextBlock Text="LeakCheckTime (s)" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="3" Grid.Column="1" Padding="5,1">                <ctrl:TextBoxEx Text="{Binding Path=LeakCheckTimeSetPoint}" TextSaved="{Binding LeakCheckTimeSetPointSaved, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" EditBoxMode="UnSignInteger"  VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="4" Padding="5,1">                <TextBlock TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"><Run Text="Leak"/><Run Language="zh-cn" Text="Rate"/><Run Text="Limit (mTorr/min)"/></TextBlock>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="4" Grid.Column="1" Padding="5,1">                <ctrl:TextBoxEx Text="{Binding Path=LeakRateUpperLimitSetPoint}" TextSaved="{Binding LeakRateUpperLimitSetPointSaved, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"   EditBoxMode="UnSignDecimal" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="5" Padding="5,1">                <TextBlock Text="LeakCheckMode" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="5" Grid.Column="1" Padding="5,1">                <ComboBox Text="{Binding Path=LeakCheckModeSetPoint}"   IsEnabled="{Binding Path=IsLeakCheckEnabled}"  Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="2" FontSize="13"  >                    <ComboBoxItem>ChamberOnly</ComboBoxItem>                    <ComboBoxItem>ChamberAndGasLine</ComboBoxItem>                    <ComboBoxItem>ChamberAndGasLineAndFAC</ComboBoxItem>                </ComboBox>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="6" Padding="5,1">                <TextBlock Text="MfcGas1" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="6" Grid.Column="1" Padding="5,1">                <CheckBox  Grid.Row="4"  Grid.Column="1" Grid.ColumnSpan="2"  HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding IsEnableGasLine}"  IsChecked="{Binding EnableGasLine1}"   />            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="7" Padding="5,1">                <TextBlock Text="MfcGas2" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="7" Grid.Column="1" Padding="5,1">                <CheckBox  Grid.Row="4"  Grid.Column="1" Grid.ColumnSpan="2"  HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding IsEnableGasLine}"  IsChecked="{Binding EnableGasLine2}"   />            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="8" Padding="5,1">                <TextBlock Text="MfcGas3" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="8" Grid.Column="1" Padding="5,1">                <CheckBox  Grid.Row="4"  Grid.Column="1" Grid.ColumnSpan="2"  HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding IsEnableGasLine}"  IsChecked="{Binding EnableGasLine3}"   />            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="9" Padding="5,1">                <TextBlock Text="MfcGas4" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="9" Grid.Column="1" Padding="5,1">                <CheckBox  Grid.Row="4"  Grid.Column="1" Grid.ColumnSpan="2"  HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding IsEnableGasLine}"  IsChecked="{Binding EnableGasLine4}"   />            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="10" Padding="5,1">                <TextBlock Text="MfcGas5" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="10" Grid.Column="1" Padding="5,1">                <CheckBox  Grid.Row="4"  Grid.Column="1" Grid.ColumnSpan="2"  HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding IsEnableGasLine}"  IsChecked="{Binding EnableGasLine5}"   />            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="11" Padding="5,1">                <TextBlock Text="Status" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="11" Grid.Column="1" Padding="5,1">                <TextBlock Text="{Binding Path=Status}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="12" Padding="5,1">                <TextBlock Text="LeakCheckElapseTime" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="12" Grid.Column="1" Padding="5,1">                <TextBlock Text="{Binding Path=LeakCheckElapseTime}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="13" Padding="5,1">                <TextBlock Text="CurrentPressure" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>            <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="13" Grid.Column="1" Padding="5,1">                <TextBlock Text="{Binding Path=Pressure}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>            </Border>        </Grid>        <Grid Grid.Column="3" Grid.Row="0" Grid.RowSpan="2">            <Grid.RowDefinitions>                <RowDefinition Height="50" />                <RowDefinition Height="*" />            </Grid.RowDefinitions>            <StackPanel Grid.Row="0" Margin="0,5,0,10" Orientation="Horizontal" HorizontalAlignment="Center">                <Button Width="80" Height="25" Margin="10,0" Content="Start" IsEnabled="{Binding IsLeakCheckEnabled}" >                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="LeakCheck"/>                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>                <Button Width="80" Height="25" Margin="10,0" Content="Stop" IsEnabled="{Binding IsAbortButtonEnabled}">                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="AbortLeakCheck"/>                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>                <Button Width="80" Height="25" Margin="10,0" Content="Delete" IsEnabled="{Binding IsLeakCheckEnabled}">                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="DeleteLeakCheck"/>                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>            </StackPanel>            <DataGrid Grid.Row="1" Padding="12,0" AutoGenerateColumns="False" BorderThickness="0.1"  FontSize="12" MinRowHeight="20" VerticalAlignment="Stretch"                        CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserResizeColumns="True" CanUserResizeRows="False" CanUserSortColumns="False"                         SelectionMode="Single" SelectionUnit="FullRow" Background="#05000000" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled"                        ItemsSource="{Binding LeakCheckResultList}" SelectedItem="{Binding CurrentLeakCheckResultItem}" FontFamily="Arial,SimSun" Margin="0,0,8,45" SelectionChanged="DataGrid_SelectionChanged">                <DataGrid.Columns>                    <DataGridTextColumn Width="160" Binding="{Binding Date, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}"  CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableLeakCheckDate}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="160" Binding="{Binding StartPressure}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableStartPressure}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="160" Binding="{Binding StopPressure}"   CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableStopPressure}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="200" Binding="{Binding LeakCheckTime}"   CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableLeakCheckTime}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="160" Binding="{Binding LeakRate, StringFormat={}{0:F5}}"   CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableLeakRate}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="200" Binding="{Binding LeakCheckMode}"   CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableCheckMode}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                    <DataGridTextColumn Width="*" Binding="{Binding LeakCheckStatus}"  CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >                        <DataGridTextColumn.HeaderTemplate >                            <DataTemplate>                                <TextBlock Text="{DynamicResource GlobalLableLeakCheckStatus}" />                            </DataTemplate>                        </DataGridTextColumn.HeaderTemplate>                    </DataGridTextColumn>                </DataGrid.Columns>            </DataGrid>        </Grid>    </Grid></UserControl>
 |