KeplerWaferAssociationUnit.xaml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. <UserControl x:Class="Venus_MainPages.Views.KeplerWaferAssociationUnit"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:unity="clr-namespace:Venus_MainPages.Unity"
  7. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  8. mc:Ignorable="d"
  9. xmlns:customControls="clr-namespace:Venus_Themes.CustomControls;assembly=Venus_Themes"
  10. xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  11. xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation"
  12. xmlns:sys="clr-namespace:System;assembly=mscorlib"
  13. xmlns:converters="clr-namespace:Venus_MainPages.Converters"
  14. d:DesignHeight="450" d:DesignWidth="600" x:Name="WaferUnit">
  15. <UserControl.Resources>
  16. <converters:ExecutingEnableConverter x:Key="ExecutingEnableConverter"/>
  17. </UserControl.Resources>
  18. <Grid>
  19. <Grid.ColumnDefinitions>
  20. <ColumnDefinition/>
  21. <ColumnDefinition/>
  22. </Grid.ColumnDefinitions>
  23. <Grid VerticalAlignment="Top">
  24. <Grid.RowDefinitions>
  25. <RowDefinition Height="Auto"></RowDefinition>
  26. <RowDefinition></RowDefinition>
  27. </Grid.RowDefinitions>
  28. <Grid unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="#E0E4E7" unity:GridOptions.LineThickness="2" Background="#F5F7FA">
  29. <Grid.RowDefinitions>
  30. <RowDefinition Height="27"></RowDefinition>
  31. <RowDefinition Height="27"></RowDefinition>
  32. <RowDefinition Height="27"></RowDefinition>
  33. <RowDefinition Height="0"></RowDefinition>
  34. <RowDefinition Height="27"></RowDefinition>
  35. <RowDefinition Height="27"></RowDefinition>
  36. <RowDefinition Height="27"></RowDefinition>
  37. <RowDefinition Height="27"></RowDefinition>
  38. <RowDefinition Height="Auto"></RowDefinition>
  39. <RowDefinition Height="Auto"></RowDefinition>
  40. </Grid.RowDefinitions>
  41. <StackPanel Grid.Row="0" Orientation="Horizontal">
  42. <TextBlock Text="Lot ID:" TextWrapping="Wrap" Foreground="Black" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="58"></TextBlock>
  43. <TextBox Text="{Binding WAInfo.LotId, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalContentAlignment="Center" Width="200" Height="19" Margin="6 0 0 0" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"></TextBox>
  44. </StackPanel>
  45. <StackPanel Grid.Row="1" Orientation="Horizontal">
  46. <TextBlock Text="Carrier ID:" TextWrapping="Wrap" Foreground="Black" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  47. <Border BorderThickness="1" BorderBrush="Silver" Width="199" Margin="0" VerticalAlignment="Center" Background="White" Height="19">
  48. <TextBlock Text="{Binding ElementName=WaferUnit,Path=CarrierId}" Foreground="Gray" FontSize="12" VerticalAlignment="Center"/>
  49. </Border>
  50. <!--<ComboBox Style="{StaticResource customeComboBoxStyle}" Width="200" x:Name="preComboBox" DropDownOpened="preComboBox_DropDownOpened" SelectionChanged="preComboBox_SelectionChanged" Margin="0 2 0 2" SelectedValue="{Binding ElementName=WaferUnit,Path=WAInfo.PreCleanRecipeName}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>-->
  51. </StackPanel>
  52. <StackPanel Grid.Row="2" Orientation="Horizontal">
  53. <TextBlock Text="Sequence:" TextWrapping="Wrap" Foreground="Black" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  54. <ComboBox Style="{StaticResource customeComboBoxStyle}" Width="200" FontSize="12" x:Name="cb" DropDownOpened="cb_DropDownOpened" SelectionChanged="cb_SelectionChanged" Margin="0 2 0 2" SelectedValue="{Binding ElementName=WaferUnit,Path=SequenceName}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  55. </StackPanel>
  56. <!--<StackPanel Grid.Row="2" Orientation="Horizontal">
  57. <TextBlock Text="Pre Clean:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  58. <ComboBox Style="{StaticResource customeComboBoxStyle}" Width="200" x:Name="preComboBox" DropDownOpened="preComboBox_DropDownOpened" SelectionChanged="preComboBox_SelectionChanged" Margin="0 2 0 2" SelectedValue="{Binding ElementName=WaferUnit,Path=WAInfo.PreCleanRecipeName}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  59. </StackPanel>
  60. <StackPanel Grid.Row="3" Orientation="Horizontal">
  61. <TextBlock Text="Post Clean:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  62. <ComboBox Style="{StaticResource customeComboBoxStyle}" Width="200" x:Name="postComboBox" DropDownOpened="postComboBox_DropDownOpened" SelectionChanged="postComboBox_SelectionChanged" Margin="0 3 0 3" SelectedValue="{Binding ElementName=WaferUnit,Path=WAInfo.PostCleanRecipeName}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  63. </StackPanel>-->
  64. <StackPanel Grid.Row="4" Orientation="Horizontal">
  65. <TextBlock Text="Cycle Set:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  66. <CheckBox x:Name="IsEnableCycleCheckBox" Content="IsEnable" VerticalAlignment="Center" Padding="0 1 0 0" IsChecked="{Binding ElementName=WaferUnit,Path=WAInfo.IsEnableCycle}" Unchecked="IsEnableCycleCheckBox_Unchecked" Checked="IsEnableCycleCheckBox_Checked" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  67. <TextBlock Text="Cycle Num:" TextBlock.TextAlignment="Center" VerticalAlignment="Center" Margin="10 0 5 0"/>
  68. <TextBox x:Name="CycleNumTextbox" Width="50" VerticalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="20" BorderThickness="1" Text="{Binding ElementName=WaferUnit,Path=WAInfo.CycleNumber,Mode=TwoWay}" IsEnabled="False">
  69. </TextBox>
  70. </StackPanel>
  71. <StackPanel Grid.Row="5" Orientation="Horizontal">
  72. <TextBlock Text="Cycle Info:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  73. <TextBlock Text="{Binding ElementName=WaferUnit,Path=CycleInfo}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"/>
  74. </StackPanel>
  75. <StackPanel Grid.Row="6" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}">
  76. <Button Content="Select All" Height="22" Command="{Binding SelectAllCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}" Width="95" Click="SelectAllButton_Click"/>
  77. <Button Content="DeSelect All" Height="22" Command="{Binding UnSelectAllCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}" Width="95" Click="UnSelectAllButton_Click" Margin="10 0 0 0"/>
  78. </StackPanel>
  79. <Grid Grid.Row="7">
  80. <Grid.ColumnDefinitions>
  81. <ColumnDefinition Width="Auto"/>
  82. <ColumnDefinition Width="Auto"/>
  83. <ColumnDefinition Width="Auto"/>
  84. <ColumnDefinition Width="Auto"/>
  85. </Grid.ColumnDefinitions>
  86. <TextBlock Grid.Column="0" Text="Name:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"></TextBlock>
  87. <TextBox Grid.Column="1" Text="{Binding WAInfo.JobID, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" TextAlignment="Center" VerticalContentAlignment="Center" Margin="0 3 5 3" Width="90" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  88. <TextBlock Grid.Column="2" Text="Status:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" VerticalAlignment="Center"></TextBlock>
  89. <TextBox Grid.Column="3" Text="{Binding WAInfo.JobStatus, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" TextAlignment="Center" VerticalContentAlignment="Center" Margin="0 3 0 3" IsEnabled="False" Width="95"/>
  90. </Grid>
  91. <StackPanel Grid.Row="8" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding WAInfo.JobStatus, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}},Converter={StaticResource ExecutingEnableConverter}}">
  92. <Button Content="Create Job" Width="95" Height="22" Command="{Binding CreateJobCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}"/>
  93. <Button Content="Abort Job" Width="95" Height="22" Command="{Binding AbortJobCommand}" CommandParameter="{Binding WAInfo.JobID,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" Margin="10 0 0 0" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable,Converter={StaticResource BoolToBool}}"/>
  94. </StackPanel>
  95. <StackPanel Grid.Row="9" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center">
  96. <Button Content="Start" Width="95" Height="22" Command="{Binding StartCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}" IsEnabled="{Binding WAInfo.JobStatus, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}},Converter={StaticResource ExecutingEnableConverter}}"/>
  97. <Button Content="Stop" Width="95" Height="22" Margin="10,0,0,0" Command="{Binding StopCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}"/>
  98. <!--<Button Content="Abort" Width="70" Height="22" Margin="10,0,0,0" Command="{Binding AbortCommand}" CommandParameter="{Binding ElementName=WaferUnit,Path=WAInfo}" />-->
  99. </StackPanel>
  100. </Grid>
  101. <ListBox Grid.Row="1"
  102. BorderThickness="0"
  103. ItemsSource="{Binding ElementName=WaferUnit,Path=WAInfo.ModuleData.WaferManager.Wafers}" Name="list1">
  104. <ListBox.ItemContainerStyle>
  105. <Style TargetType="ListBoxItem">
  106. <Setter Property="Template">
  107. <Setter.Value>
  108. <ControlTemplate TargetType="ListBoxItem">
  109. <Border Name="Border"
  110. Background="{TemplateBinding Background}"
  111. BorderBrush="{TemplateBinding BorderBrush}"
  112. BorderThickness="{TemplateBinding BorderThickness}">
  113. <ContentPresenter HorizontalAlignment="Stretch"
  114. VerticalAlignment="Stretch"
  115. ContentSource="Content" />
  116. </Border>
  117. <ControlTemplate.Triggers>
  118. <Trigger Property="IsSelected" Value="True">
  119. <!-- 设置选中项的背景为透明或者你想要的颜色 -->
  120. <Setter TargetName="Border" Property="Background" Value="Transparent" />
  121. </Trigger>
  122. </ControlTemplate.Triggers>
  123. </ControlTemplate>
  124. </Setter.Value>
  125. </Setter>
  126. </Style>
  127. </ListBox.ItemContainerStyle>
  128. <ListBox.Resources>
  129. <Style TargetType="ListBoxItem" BasedOn="{StaticResource ResourceKey={x:Type ListBoxItem}}">
  130. <Setter Property="Rectangle.StrokeThickness" Value="0"/>
  131. <Style.Triggers>
  132. <Trigger Property="IsMouseOver" Value="True">
  133. <Setter Property="Background" Value="Red"/>
  134. </Trigger>
  135. </Style.Triggers>
  136. </Style>
  137. <!--<Style TargetType="ListBoxItem">
  138. </Style>-->
  139. </ListBox.Resources>
  140. <ListBox.ItemTemplate>
  141. <DataTemplate>
  142. <Grid Height="16" Background="#F5F7FA">
  143. <Grid.ColumnDefinitions>
  144. <ColumnDefinition Width="Auto"></ColumnDefinition>
  145. <ColumnDefinition Width="Auto"></ColumnDefinition>
  146. <!--<ColumnDefinition Width="Auto"></ColumnDefinition>-->
  147. </Grid.ColumnDefinitions>
  148. <Border Grid.Column="0" BorderBrush="#E0E4E7" BorderThickness="0,0,1,1" Width="90">
  149. <ctrl:Slot Grid.Column="1" ViewType="Front" AllowDrop="True" WaferStatus="{Binding WaferStatus}" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}" SourceName="{Binding SourceName}" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0 2 0 0" SlotWidth="74" Cursor="Hand" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}" SlotMouseButtonDown="Slot_SlotMouseButtonDown" WaferTransferStarted="Slot_WaferTransferStarted">
  150. </ctrl:Slot>
  151. </Border>
  152. <Border Grid.Column="1" BorderBrush="#E0E4E7" BorderThickness="0,0,1,1" Width="176" >
  153. <Button Cursor="Hand" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" HorizontalAlignment="Center" VerticalAlignment="Center" Width="190" Background="White" Style="{x:Null}" BorderThickness="0" Command="{Binding Path=DataContext.SetSequenceCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListBox}}" CommandParameter="{Binding}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}">
  154. <Button.Content>
  155. <TextBlock Text="{Binding SequenceName}"/>
  156. </Button.Content>
  157. </Button>
  158. </Border>
  159. <!--<Border Grid.Column="2" BorderBrush="Silver" BorderThickness="0 1 1 0" Width="56" Padding="5,1" >
  160. <Button Width="40" Height="14" Command="{Binding Path=DataContext.SetSequenceCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListBox}}" CommandParameter="{Binding}" IsEnabled="{Binding ElementName=WaferUnit,Path=ButtonIsEnable}">
  161. <Button.Style>
  162. <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ResourceKey={x:Type Button}}">
  163. <Setter Property="Button.Content" Value="Remove"/>
  164. <Setter Property="FontSize" Value="10" />
  165. <Style.Triggers>
  166. <DataTrigger Binding="{Binding SequenceName}" Value="{x:Static sys:String.Empty}">
  167. <Setter Property="Button.Content" Value="Set"/>
  168. </DataTrigger>
  169. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  170. <Setter Property="Button.IsEnabled" Value="False"/>
  171. </DataTrigger>
  172. </Style.Triggers>
  173. </Style>
  174. </Button.Style>
  175. </Button>
  176. </Border>-->
  177. </Grid>
  178. </DataTemplate>
  179. </ListBox.ItemTemplate>
  180. </ListBox>
  181. </Grid>
  182. </Grid>
  183. </UserControl>