<UserControl x:Class="CyberX8_MainPages.Views.OperationOverView" 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:CyberX8_MainPages.Views" mc:Ignorable="d" xmlns:ctrls="clr-namespace:CyberX8_Themes.UserControls;assembly=CyberX8_Themes" xmlns:customControls="clr-namespace:CyberX8_Themes.CustomControls;assembly=CyberX8_Themes" xmlns:Attach="clr-namespace:CyberX8_UI.Themes.Attach;assembly=CyberX8_Themes" xmlns:converters="clr-namespace:CyberX8_Themes.Converters;assembly=CyberX8_Themes" xmlns:converters2="clr-namespace:CyberX8_MainPages.Converters" xmlns:userControls="clr-namespace:CyberX8_Themes.UserControls;assembly=CyberX8_Themes" xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:prism="http://prismlibrary.com/" prism:ViewModelLocator.AutoWireViewModel="True" xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=MECF.Framework.UI.Core" xmlns:unity="clr-namespace:CyberX8_MainPages.Unity" d:DesignHeight="450" d:DesignWidth="800"> <!--<i:Interaction.Triggers> <i:EventTrigger EventName="Loaded"> <i:InvokeCommandAction Command="{Binding LoadCommand}"/> </i:EventTrigger> </i:Interaction.Triggers>--> <UserControl.Resources> <converters:BoolToVisibility x:Key="boolToVisibility"/> <converters:BoolToVisibility2 x:Key="boolToVisibility2"/> <converters:BoolToVisibility3 x:Key="boolToVisibility3"/> <converters:BoolToBool x:Key="BoolToBool"/> <converters2:IsOnlineToOpacityConverter x:Key="IsOnlineToOpacityConverter"/> <converters:BoolToColor x:Key="boolToColor"/> <converters:BoolToColor4 x:Key="boolToColor4"/> <converters2:IntToPathDataConverter x:Key="IntToPathDataConverter"/> </UserControl.Resources> <Canvas> <userControls:WaferStatus Canvas.Left="1721" Canvas.Top="15" HorizontalAlignment="Center" VerticalAlignment="Top"/> <Border BorderThickness="0,0,0,1" BorderBrush="Black" Canvas.Top="20" Canvas.Left="40" Width="915"> <StackPanel Orientation="Horizontal" Margin="0,0,0,5"> <customControls:PathButton PathData="{StaticResource Icon_Init}" DefaultFillBrush="White" Command="{Binding HomeAllCommand}" Width="120" Height="30" Content="Initialize" Margin="10,0,0,0" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}"/> <RadioButton Content="Manual" FontSize="15" Width="120" Height="28" Margin="50 0 5 0" Style="{StaticResource Button_RadioButton}" Command="{Binding EnableManualCommand}" IsChecked="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}"/> <RadioButton Content="Auto" FontSize="15" Width="120" Height="28" Margin="0 0 0 0" Style="{StaticResource Button_RadioButton}" Command="{Binding EnableAutoCommand}" IsChecked="{Binding RtDataValues[System.IsAutoMode]}"/> <customControls:PathButton PathData="{StaticResource Icon_Abort}" DefaultFillBrush="White" Width="130" Height="30" Content="Abort" Command="{Binding AbortAllCommand}" Margin="50 0 0 0" /> <customControls:PathButton PathData="{Binding RtDataValues[EquipmentStatus],Converter={StaticResource IntToPathDataConverter}}" DefaultFillBrush="White" Width="130" Height="30" Content="{Binding RouteState}" Command="{Binding ResumeAllJobCommand}" IsEnabled="{Binding RtDataValues[System.IsAutoMode]}" Margin="50 0 0 0" /> </StackPanel> </Border> <Canvas Canvas.Top="40"> <Grid Canvas.Left="113" Canvas.Top="184" Panel.ZIndex="2" Visibility="{Binding IsLP1Unable,Converter={StaticResource bool2VisibilityConverter}}"> <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1" /> </Grid> <Grid Canvas.Left="113" Canvas.Top="282" Panel.ZIndex="2" Visibility="{Binding IsLP2Unable,Converter={StaticResource bool2VisibilityConverter}}"> <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1" /> </Grid> <Grid Canvas.Left="113" Canvas.Top="379" Panel.ZIndex="2" Visibility="{Binding IsLP3Unable,Converter={StaticResource bool2VisibilityConverter}}"> <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1" /> </Grid> <TextBlock Canvas.Top="220" Canvas.Left="50" Text="{Binding RtDataValues[LP1.WaferSize], StringFormat=({0})}" Visibility="{Binding RtDataValues[LP1.CassettePlaced], Converter={StaticResource boolToVisibility2}}" HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="16"> </TextBlock> <TextBlock Canvas.Top="320" Canvas.Left="50" Text="{Binding RtDataValues[LP2.WaferSize], StringFormat=({0})}" Visibility="{Binding RtDataValues[LP2.CassettePlaced], Converter={StaticResource boolToVisibility2}}" HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="16"> </TextBlock> <TextBlock Canvas.Top="420" Canvas.Left="50" Text="{Binding RtDataValues[LP3.WaferSize], StringFormat=({0})}" Visibility="{Binding RtDataValues[LP3.CassettePlaced], Converter={StaticResource boolToVisibility2}}" HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="16"> </TextBlock> <Canvas Canvas.Left="280"> <userControls:EFEM Width="360" Height="300" Canvas.Left="-88" Canvas.Top="169" Aligner1Wafer="{Binding Aligner1Wafer}" LP1Presented="{Binding RtDataValues[LP1.CassettePlaced]}" LP2Presented="{Binding RtDataValues[LP2.CassettePlaced]}" LP3Presented="{Binding RtDataValues[LP3.CassettePlaced]}" LP1Loaded="{Binding RtDataValues[LP1.IsLoaded]}" LP2Loaded="{Binding RtDataValues[LP2.IsLoaded]}" LP3Loaded="{Binding RtDataValues[LP3.IsLoaded]}" RobotATAction="{Binding Robot3TAction}" RobotAXAction="{Binding Robot3XAction}" RobotAWaferInfo="{Binding BladeAWafer}" CurrentRobotPosition="{Binding CurrentRobotPosition}" Puf2IsInRobotStation="false" Puf1IsInRobotStation="false" HorizontalAlignment="Center" VerticalAlignment="Top" /> <TextBlock Text="{Binding RobotMoveInfo}" FontSize="20" Canvas.Left="700" Canvas.Top="250" Visibility="Collapsed"/> <TextBlock Text="{Binding EfemRobotMoveInfo}" FontSize="20" Canvas.Left="700" Canvas.Top="350" Visibility="Collapsed"/> </Canvas> <Canvas Canvas.Left="-210" Canvas.Top="-165"> <TabPanel Canvas.Left="1170" Canvas.Top="140" Visibility="{Binding ElementName=CarrierRadioButton,Path=IsChecked,Converter={StaticResource boolToVisibility2}}"> <Border BorderBrush="Gray" BorderThickness="1" Width="710" Height="480"> <StackPanel Orientation="Horizontal" > <StackPanel> <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP1" Width="150" Height="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" FontSize="10"/> <ctrls:FOUPFrontView UnitData="{Binding LP1ModuleInfo}" IsCassettePlaced="{Binding RtDataValues[LP1.CassettePlaced]}" ShowTitle="False" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Visibility="{Binding RtDataValues[LP1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="12" Visibility="{Binding RtDataValues[LP1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <TextBlock.Text> <MultiBinding StringFormat="{}Wafer Count:{0}"> <Binding Path="LP1WaferCount"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> <StackPanel Orientation="Horizontal" IsEnabled="{Binding IsLP1HasNoJob}" Visibility="{Binding RtDataValues[LP1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <customControls:PathButton Content="Map" HorizontalAlignment="Center" Margin="25,5,0,5" Width="75" Height="30" Command="{Binding MapCommand}" CommandParameter="LP1" IsEnabled="{Binding IsLP1Unable,Converter={StaticResource BoolToBool}}"/> </StackPanel> </StackPanel> <StackPanel> <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP2" Width="150" Height="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" FontSize="10"/> <ctrls:FOUPFrontView UnitData="{Binding LP2ModuleInfo}" IsCassettePlaced="{Binding RtDataValues[LP2.CassettePlaced]}" ShowTitle="False" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Visibility="{Binding RtDataValues[LP2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="12" Visibility="{Binding RtDataValues[LP2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <TextBlock.Text> <MultiBinding StringFormat="{}Wafer Count:{0}"> <Binding Path="LP2WaferCount"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> <StackPanel Orientation="Horizontal" IsEnabled="{Binding IsLP2HasNoJob}" Visibility="{Binding RtDataValues[LP2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <customControls:PathButton Content="Map" HorizontalAlignment="Center" Margin="25,5,0,5" Width="75" Height="30" Command="{Binding MapCommand}" CommandParameter="LP2" IsEnabled="{Binding IsLP2Unable,Converter={StaticResource BoolToBool}}"/> </StackPanel> </StackPanel> <StackPanel > <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP3" Width="150" Height="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" FontSize="10"/> <ctrls:FOUPFrontView UnitData="{Binding LP3ModuleInfo}" IsCassettePlaced="{Binding RtDataValues[LP3.CassettePlaced]}" ShowTitle="False" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Visibility="{Binding RtDataValues[LP3.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="12" Visibility="{Binding RtDataValues[LP3.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <TextBlock.Text> <MultiBinding StringFormat="{}Wafer Count:{0}"> <Binding Path="LP3WaferCount"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> <StackPanel Orientation="Horizontal" IsEnabled="{Binding IsLP3HasNoJob}" Visibility="{Binding RtDataValues[LP3.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <customControls:PathButton Content="Map" HorizontalAlignment="Center" Margin="25,5,0,5" Width="75" Height="30" Command="{Binding MapCommand}" CommandParameter="LP3" IsEnabled="{Binding IsLP3Unable,Converter={StaticResource BoolToBool}}"/> </StackPanel> </StackPanel> <StackPanel > <TextBox Background="{DynamicResource Table_BG_Title}" Text="Dummy1" Width="130" Height="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" FontSize="10"/> <ctrls:FOUPFrontView UnitData="{Binding Dummy1ModuleInfo}" IsCassettePlaced="{Binding RtDataValues[Dummy1.CassettePlaced]}" ShowTitle="False" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Visibility="{Binding RtDataValues[Dummy1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="12" Visibility="{Binding RtDataValues[Dummy1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <TextBlock.Text> <MultiBinding StringFormat="{}Wafer Count:{0}"> <Binding Path="Dummy1WaferCount"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> <TextBlock Text="{Binding RtDataValues[Dummy1.WaferSize], StringFormat=({0})}" HorizontalAlignment="Center" Margin="0,10,0,0" FontSize="12" Visibility="{Binding RtDataValues[Dummy1.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> </StackPanel> <StackPanel > <TextBox Background="{DynamicResource Table_BG_Title}" Text="Dummy2" Width="130" Height="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" FontSize="10"/> <ctrls:FOUPFrontView UnitData="{Binding Dummy2ModuleInfo}" IsCassettePlaced="{Binding RtDataValues[Dummy2.CassettePlaced]}" ShowTitle="False" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Visibility="{Binding RtDataValues[Dummy2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="12" Visibility="{Binding RtDataValues[Dummy2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"> <TextBlock.Text> <MultiBinding StringFormat="{}Wafer Count:{0}"> <Binding Path="Dummy2WaferCount"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> <TextBlock Text="{Binding RtDataValues[Dummy2.WaferSize], StringFormat=({0})}" HorizontalAlignment="Center" Margin="0,10,0,0" FontSize="12" Visibility="{Binding RtDataValues[Dummy2.CassettePlaced],Converter={StaticResource boolToVisibility2}}"/> </StackPanel> </StackPanel> </Border> </TabPanel> </Canvas> <Grid Visibility="Hidden" Canvas.Left="1700" Canvas.Top="40" Width="200" Background="White" Margin="10,-1,0,-1"> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition Width="9*"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="30"/> <RowDefinition Height="Auto"/> <RowDefinition Height="30"/> <RowDefinition /> </Grid.RowDefinitions> <Border Grid.Row="0" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1" Background="{DynamicResource MainFrame_BG_Title}" Padding="5,1" Grid.ColumnSpan="2"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center"> <Path Data="M0,0 L5,0 5,5 z" Fill="Black" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5"> <Path.RenderTransform> <TransformGroup> <ScaleTransform/> <SkewTransform/> <RotateTransform Angle="45"/> <TranslateTransform/> </TransformGroup> </Path.RenderTransform> </Path> <TextBlock Margin="5,0,0,0" Text="Wafer Status" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Left" VerticalAlignment="Center"/> </StackPanel> </Border> <Border Grid.Row="1" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Padding="5,1" Grid.ColumnSpan="2"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,5"> <Grid Width="180" Height="20" HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Rectangle Fill="Gold" Stroke="Black" StrokeThickness="1"/> <TextBlock Text="Idle / Unselected" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Grid> <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40"/> <ColumnDefinition Width="6*" /> <ColumnDefinition Width="29*"/> </Grid.ColumnDefinitions> <Rectangle Fill="Blue" Stroke="Black" StrokeThickness="1"/> <TextBlock Text="Idle / Job Selected" Grid.Column="1" Margin="10,2,0,1" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Grid.ColumnSpan="2"/> </Grid> <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Rectangle Fill="Cyan" Stroke="Black" StrokeThickness="1"/> <TextBlock Text="In Process" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Grid> <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Rectangle Fill="LimeGreen" Stroke="Black" StrokeThickness="1"/> <TextBlock Text="Process Complete" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Grid> <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40"/> <ColumnDefinition /> </Grid.ColumnDefinitions> <Rectangle Fill="Red" Stroke="Black" StrokeThickness="1"/> <TextBlock Text="Error" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Grid> </StackPanel> </Border> <Border Grid.Row="2" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource MainFrame_BG_Title}" Padding="5,1" Grid.ColumnSpan="2"> </Border> <Border Grid.Row="3" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Padding="5,1" Grid.ColumnSpan="2"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,5"> <Grid x:Name="Cycle_Info" Visibility="{Binding IsCycleInfoVisibility}" Margin="0,10,0,0"> <Grid.ColumnDefinitions> <ColumnDefinition Width="110"/> <ColumnDefinition Width="70"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="25"/> <RowDefinition Height="24"/> <RowDefinition Height="24"/> <RowDefinition Height="24"/> </Grid.RowDefinitions> <TextBlock Grid.ColumnSpan="2" Text="Cycle Information" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,0,0,3"/> <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="1" Padding="5,1"> <TextBlock Text="Wafer Count" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Border> <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="1" Grid.Column="1" Padding="5,1"> <TextBlock Text="{Binding RtDataValues[Scheduler.CycledWafer]}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Border> <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_Title}" Grid.Row="2" Padding="5,1"> <TextBlock Text="Cycle Count" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Border> <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="2" Grid.Column="1" Padding="5,1"> <TextBlock TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"> <TextBlock.Text> <MultiBinding StringFormat="{}{0}/{1}"> <Binding Path="RtDataValues[Scheduler.CycleSetPoint]"></Binding> <Binding Path="RtDataValues[Scheduler.CycledCount]"></Binding> </MultiBinding> </TextBlock.Text> </TextBlock> </Border> <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="3" Padding="5,1"> <TextBlock Text="Throughput" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" 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"> <TextBlock Text="{Binding RtDataValues[Scheduler.Throughput]}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/> </Border> </Grid> <TextBlock Grid.ColumnSpan="2" Text="{Binding ATMModeIsOn}" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,20,0,0"/> </StackPanel> </Border> </Grid> </Canvas> <TextBlock Canvas.Top="82" Canvas.Left="217" Text="Dummy Cassette" FontSize="16"></TextBlock> <userControls:SRD2 CassetteName="SRD2" Canvas.Left="389" Canvas.Top="107" Width="100" Height="100" HorizontalAlignment="Center" VerticalAlignment="Top" SRD2Wafer="{Binding SRD2Wafer}" SRD2Visibility="Visible"> <i:Interaction.Triggers> <i:EventTrigger EventName="MouseLeftButtonUp"> <i:InvokeCommandAction Command="{Binding GotoSrdViewCommond}" CommandParameter="SRD2"/> </i:EventTrigger> </i:Interaction.Triggers> </userControls:SRD2> <userControls:SRD1 CassetteName="SRD1" Canvas.Left="389" Canvas.Top="107" Width="100" Height="100" HorizontalAlignment="Center" VerticalAlignment="Top" SRD1Wafer="{Binding SRD1Wafer}" SRD1Visibility="Visible"> <i:Interaction.Triggers> <i:EventTrigger EventName="MouseLeftButtonUp"> <i:InvokeCommandAction Command="{Binding GotoSrdViewCommond}" CommandParameter="SRD1"/> </i:EventTrigger> </i:Interaction.Triggers> </userControls:SRD1> <!--<userControls:SRD CassetteName="SRD2" Canvas.Left="345" Canvas.Top="107" Width="100" Height="100" HorizontalAlignment="Center" VerticalAlignment="Top" RobotWafer="{Binding SRD2Wafer}" SRDVisibility="Visible"/>--> <userControls:DummyCassette Canvas.Left="360" Canvas.Top="207" RotateTransformValue="180" Width="100" Height="100"/> <userControls:PufLoaderControl Canvas.Left="549" Height="300" HorizontalAlignment="Left" VerticalAlignment="Center" Canvas.Top="209" Puf1WaferA="{Binding PUF1WaferA}" Puf1WaferB="{Binding PUF1WaferB}" LoaderWaferA="{Binding LoaderWaferA}" LoaderWaferB="{Binding LoaderWaferB}" CurrentLoaderAXLocation="{Binding LoaderAXLocation}" WaferVisibleA="{Binding LoaderWaferVisibleA}" WaferVisibleB="{Binding LoaderWaferVisibleB}" Puf1FlipPosition="{Binding Puf1FlipPosition}" Loader1RotationPosition="{Binding Loader1RotationPosition}" Puf1RotationPosition="{Binding Puf1RotationPosition}" /> <local:ProcessChamberView Tag="" Canvas.Left="110" Canvas.Top="513"/> <userControls:SRDFrontView UnitData1="{Binding SRD2ModuleInfo}" UnitData2="{Binding SRD1ModuleInfo}" Title="SRD" Canvas.Top="105" Canvas.Left="545"/> <userControls:RobotFrontView Canvas.Left="740" Canvas.Top="137" UnitData="{Binding EFEMModuleInfo}"/> </Canvas> </UserControl>