OperationOverView.xaml 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599
  1. <UserControl x:Class="Venus_MainPages.Views.OperationOverView"
  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:local="clr-namespace:Venus_MainPages.Views"
  7. mc:Ignorable="d"
  8. xmlns:ctrls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  9. xmlns:customControls="clr-namespace:Venus_Themes.CustomControls;assembly=Venus_Themes"
  10. xmlns:Attach="clr-namespace:Venus_UI.Themes.Attach;assembly=Venus_Themes"
  11. xmlns:converters="clr-namespace:Venus_Themes.Converters;assembly=Venus_Themes"
  12. xmlns:converters2="clr-namespace:Venus_MainPages.Converters"
  13. xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  14. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  15. xmlns:prism="http://prismlibrary.com/"
  16. prism:ViewModelLocator.AutoWireViewModel="True"
  17. xmlns:unity="clr-namespace:Venus_MainPages.Unity"
  18. d:DesignHeight="1000" d:DesignWidth="1920" x:Name="operationOverView">
  19. <i:Interaction.Triggers>
  20. <i:EventTrigger EventName="Loaded">
  21. <i:InvokeCommandAction Command="{Binding LoadCommand}" CommandParameter="{Binding ElementName=operationOverView}"/>
  22. </i:EventTrigger>
  23. </i:Interaction.Triggers>
  24. <UserControl.Resources>
  25. <converters:BoolToVisibility x:Key="boolToVisibility"/>
  26. <converters:BoolToVisibility2 x:Key="boolToVisibility2"/>
  27. <converters:BoolToVisibility3 x:Key="boolToVisibility3"/>
  28. <converters:BoolToBool x:Key="BoolToBool"/>
  29. <converters2:IsOnlineToOpacityConverter x:Key="IsOnlineToOpacityConverter"/>
  30. <converters:BoolToColor x:Key="boolToColor"/>
  31. <converters:BoolToColor4 x:Key="boolToColor4"/>
  32. <converters2:IntToPathDataConverter x:Key="IntToPathDataConverter"/>
  33. <converters2:mTorrToPaConverter x:Key="mTorrToPaConverter"/>
  34. </UserControl.Resources>
  35. <Grid>
  36. <Grid.ColumnDefinitions>
  37. <ColumnDefinition />
  38. <ColumnDefinition Width="870"/>
  39. </Grid.ColumnDefinitions>
  40. <Canvas>
  41. <Border Canvas.Left="200" Canvas.Top="10" BorderBrush="#076DB6" BorderThickness="0" Padding="5,1" >
  42. <StackPanel HorizontalAlignment="Center" Orientation="Horizontal">
  43. <!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="0 1 0 0">
  44. <TextBlock Text="ATM Mode" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" />
  45. <Ellipse Width="16" Height="16" Fill="{Binding ATMModeIsOn,Converter={StaticResource boolToColor}}" Stroke="Silver" StrokeThickness="0" Margin="5 0 0 0"></Ellipse>
  46. </StackPanel>-->
  47. <TextBlock Margin="10 1 0 0" Text="Wafer Status: " FontFamily="Arial" FontSize="14" Foreground="Black" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  48. <Grid Height="14" Margin="0,1,0,0" HorizontalAlignment="Left">
  49. <Grid.ColumnDefinitions>
  50. <ColumnDefinition Width="14"/>
  51. <ColumnDefinition />
  52. </Grid.ColumnDefinitions>
  53. <Rectangle Fill="Gold" Stroke="Black" StrokeThickness="1"/>
  54. <TextBlock Width="120" Text="Idle / Unselected" Grid.Column="1" Margin="10,0,5,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  55. </Grid>
  56. <Grid Height="14" Margin="0,1,0,0" HorizontalAlignment="Left">
  57. <Grid.ColumnDefinitions>
  58. <ColumnDefinition Width="14"/>
  59. <ColumnDefinition />
  60. </Grid.ColumnDefinitions>
  61. <Rectangle Fill="Blue" Stroke="Black" StrokeThickness="1"/>
  62. <TextBlock Width="120" Text="Idle / Job Selected" Grid.Column="1" Margin="10,0,5,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  63. </Grid>
  64. <Grid Height="14" Margin="0,1,0,0" HorizontalAlignment="Left">
  65. <Grid.ColumnDefinitions>
  66. <ColumnDefinition Width="14"/>
  67. <ColumnDefinition />
  68. </Grid.ColumnDefinitions>
  69. <Rectangle Fill="Cyan" Stroke="Black" StrokeThickness="1"/>
  70. <TextBlock Width="80" Text="In Process" Grid.Column="1" Margin="10,0,5,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  71. </Grid>
  72. <Grid Height="14" Margin="0,1,0,0" HorizontalAlignment="Left">
  73. <Grid.ColumnDefinitions>
  74. <ColumnDefinition Width="14"/>
  75. <ColumnDefinition />
  76. </Grid.ColumnDefinitions>
  77. <Rectangle Fill="LimeGreen" Stroke="Black" StrokeThickness="1"/>
  78. <TextBlock Width="70" Text="Complete" Grid.Column="1" Margin="10,0,5,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  79. </Grid>
  80. <Grid Height="14" Margin="0,1,0,0" HorizontalAlignment="Left">
  81. <Grid.ColumnDefinitions>
  82. <ColumnDefinition Width="14"/>
  83. <ColumnDefinition />
  84. </Grid.ColumnDefinitions>
  85. <Rectangle Fill="Red" Stroke="Black" StrokeThickness="1"/>
  86. <TextBlock Width="120" Text="Error" Grid.Column="1" Margin="10,0,5,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  87. </Grid>
  88. </StackPanel>
  89. </Border>
  90. <Grid Canvas.Left="5" Canvas.Top="396" Width="280" Height="180" Margin="0 0 0 10" Visibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" unity:GridOptions.LineBrush="#D8DEE5" unity:GridOptions.ShowBorder="True" Background="#FFFFFF">
  91. <Grid.RowDefinitions>
  92. <RowDefinition Height="24"/>
  93. <RowDefinition/>
  94. <RowDefinition/>
  95. <RowDefinition/>
  96. <RowDefinition/>
  97. <RowDefinition/>
  98. <RowDefinition/>
  99. <RowDefinition/>
  100. </Grid.RowDefinitions>
  101. <Grid.ColumnDefinitions>
  102. <ColumnDefinition Width="90"/>
  103. <ColumnDefinition/>
  104. </Grid.ColumnDefinitions>
  105. <TextBlock Grid.Row="0" Text="PMA" Grid.ColumnSpan="2" Foreground="White" FontSize="16" Padding="130,2,0,0" Background="#076DB6"/>
  106. <TextBlock Grid.Row="1" Text="Name" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  107. <TextBlock Grid.Row="2" Text="Step Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  108. <TextBlock Grid.Row="3" Text="Step Type" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  109. <TextBlock Grid.Row="4" Text="Step Time(s)" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  110. <TextBlock Grid.Row="5" Text="Step Desc" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  111. <!--<TextBlock Grid.Row="6" Text="Next Step" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>-->
  112. <TextBlock Grid.Row="6" Text="Cycle Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  113. <TextBlock Grid.Row="7" Text="Heater Info" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  114. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding PMARecipeResult.RecipeName}" FontSize="13" Padding="5,2,0,0" />
  115. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  116. <TextBlock.Text>
  117. <MultiBinding StringFormat="{}{0}/{1}">
  118. <Binding Path="PMARecipeResult.RecipeStepNumber"></Binding>
  119. <Binding Path="PMARecipeResult.RecipeStepCount"></Binding>
  120. </MultiBinding>
  121. </TextBlock.Text>
  122. </TextBlock>
  123. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding PMARecipeResult.RecipeStepType}" FontSize="13" Padding="5,2,0,0" />
  124. <TextBlock Grid.Row="4" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  125. <TextBlock.Text>
  126. <MultiBinding StringFormat="{}{0}/{1}">
  127. <Binding Path="PMARecipeResult.RecipeStepDuringTime"></Binding>
  128. <Binding Path="PMARecipeResult.RecipeStepSetTime"></Binding>
  129. </MultiBinding>
  130. </TextBlock.Text>
  131. </TextBlock>
  132. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding PMARecipeResult.RecipeStepDescription}" FontSize="13" Padding="5,2,0,0" />
  133. <!--<customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>-->
  134. <TextBlock Grid.Row="6" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  135. <TextBlock.Text>
  136. <MultiBinding StringFormat="{}{0}/{1}">
  137. <Binding Path="PMARecipeResult.RecipeCurrentCounter"></Binding>
  138. <Binding Path="PMARecipeResult.RecipeAllCounters"></Binding>
  139. </MultiBinding>
  140. </TextBlock.Text>
  141. </TextBlock>
  142. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  143. <Run Text="{Binding RtDataValues[PMA.HighTemperatureHeater.DeviceData].HighTemperatureHeaterPositionFeedBack}" />
  144. <Run Text=" "/>
  145. <Run Text="{Binding RtDataValues[PMA.HighTemperatureHeater.DeviceData].HighTemperatureHeaterTemperatureFeedBack,StringFormat=F1}" />
  146. <Run Text="°C"/>
  147. </TextBlock>
  148. </Grid>
  149. <Grid Canvas.Left="5" Canvas.Top="50" Width="280" Height="180" Margin="0 0 0 10" unity:GridOptions.LineBrush="#D8DEE5" unity:GridOptions.ShowBorder="True" Visibility="{Binding PMBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Background="#FFFFFF">
  150. <Grid.RowDefinitions>
  151. <RowDefinition Height="24"/>
  152. <RowDefinition/>
  153. <RowDefinition/>
  154. <RowDefinition/>
  155. <RowDefinition/>
  156. <RowDefinition/>
  157. <RowDefinition/>
  158. <RowDefinition/>
  159. </Grid.RowDefinitions>
  160. <Grid.ColumnDefinitions>
  161. <ColumnDefinition Width="90"/>
  162. <ColumnDefinition/>
  163. </Grid.ColumnDefinitions>
  164. <TextBlock Grid.Row="0" Text="PMB" Grid.ColumnSpan="2" Foreground="White" FontSize="16" Padding="130,2,0,0" Background="#076DB6"/>
  165. <TextBlock Grid.Row="1" Text="Name" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  166. <TextBlock Grid.Row="2" Text="Step Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  167. <TextBlock Grid.Row="3" Text="Step Type" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  168. <TextBlock Grid.Row="4" Text="Step Time(s)" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  169. <TextBlock Grid.Row="5" Text="Step Desc" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  170. <!--<TextBlock Grid.Row="6" Text="Next Step" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>-->
  171. <TextBlock Grid.Row="6" Text="Cycle Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  172. <TextBlock Grid.Row="7" Text="Heater Info" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  173. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding PMBRecipeResult.RecipeName}" FontSize="13" Padding="5,2,0,0" />
  174. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  175. <TextBlock.Text>
  176. <MultiBinding StringFormat="{}{0}/{1}">
  177. <Binding Path="PMBRecipeResult.RecipeStepNumber"></Binding>
  178. <Binding Path="PMBRecipeResult.RecipeStepCount"></Binding>
  179. </MultiBinding>
  180. </TextBlock.Text>
  181. </TextBlock>
  182. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding PMBRecipeResult.RecipeStepType}" FontSize="13" Padding="5,2,0,0" />
  183. <TextBlock Grid.Row="4" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  184. <TextBlock.Text>
  185. <MultiBinding StringFormat="{}{0}/{1}">
  186. <Binding Path="PMBRecipeResult.RecipeStepDuringTime"></Binding>
  187. <Binding Path="PMBRecipeResult.RecipeStepSetTime"></Binding>
  188. </MultiBinding>
  189. </TextBlock.Text>
  190. </TextBlock>
  191. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding PMBRecipeResult.RecipeStepDescription}" FontSize="13" Padding="5,2,0,0" />
  192. <!--<customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>-->
  193. <TextBlock Grid.Row="6" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  194. <TextBlock.Text>
  195. <MultiBinding StringFormat="{}{0}/{1}">
  196. <Binding Path="PMBRecipeResult.RecipeCurrentCounter"></Binding>
  197. <Binding Path="PMBRecipeResult.RecipeAllCounters"></Binding>
  198. </MultiBinding>
  199. </TextBlock.Text>
  200. </TextBlock>
  201. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  202. <Run Text="{Binding RtDataValues[PMB.HighTemperatureHeater.DeviceData].HighTemperatureHeaterPositionFeedBack}" />
  203. <Run Text=" "/>
  204. <Run Text="{Binding RtDataValues[PMB.HighTemperatureHeater.DeviceData].HighTemperatureHeaterTemperatureFeedBack,StringFormat=F1}" />
  205. <Run Text="°C"/>
  206. </TextBlock>
  207. </Grid>
  208. <Grid Canvas.Left="754" Canvas.Top="50" Width="280" Height="180" Margin="0 0 0 10" unity:GridOptions.LineBrush="#D8DEE5" unity:GridOptions.ShowBorder="True" Visibility="{Binding PMCIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Background="#FFFFFF">
  209. <Grid.RowDefinitions>
  210. <RowDefinition Height="24"/>
  211. <RowDefinition/>
  212. <RowDefinition/>
  213. <RowDefinition/>
  214. <RowDefinition/>
  215. <RowDefinition/>
  216. <RowDefinition/>
  217. <RowDefinition/>
  218. </Grid.RowDefinitions>
  219. <Grid.ColumnDefinitions>
  220. <ColumnDefinition Width="90"/>
  221. <ColumnDefinition/>
  222. </Grid.ColumnDefinitions>
  223. <TextBlock Grid.Row="0" Text="PMC" Grid.ColumnSpan="2" Foreground="White" FontSize="16" Padding="130,2,0,0" Background="#076DB6"/>
  224. <TextBlock Grid.Row="1" Text="Name" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  225. <TextBlock Grid.Row="2" Text="Step Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  226. <TextBlock Grid.Row="3" Text="Step Type" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  227. <TextBlock Grid.Row="4" Text="Step Time(s)" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  228. <TextBlock Grid.Row="5" Text="Step Desc" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  229. <!--<TextBlock Grid.Row="6" Text="Next Step" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>-->
  230. <TextBlock Grid.Row="6" Text="Cycle Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  231. <TextBlock Grid.Row="7" Text="Heater Info" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  232. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding PMCRecipeResult.RecipeName}" FontSize="13" Padding="5,2,0,0" />
  233. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  234. <TextBlock.Text>
  235. <MultiBinding StringFormat="{}{0}/{1}">
  236. <Binding Path="PMCRecipeResult.RecipeStepNumber"></Binding>
  237. <Binding Path="PMCRecipeResult.RecipeStepCount"></Binding>
  238. </MultiBinding>
  239. </TextBlock.Text>
  240. </TextBlock>
  241. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding PMCRecipeResult.RecipeStepType}" FontSize="13" Padding="5,2,0,0" />
  242. <TextBlock Grid.Row="4" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  243. <TextBlock.Text>
  244. <MultiBinding StringFormat="{}{0}/{1}">
  245. <Binding Path="PMCRecipeResult.RecipeStepDuringTime"></Binding>
  246. <Binding Path="PMCRecipeResult.RecipeStepSetTime"></Binding>
  247. </MultiBinding>
  248. </TextBlock.Text>
  249. </TextBlock>
  250. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding PMCRecipeResult.RecipeStepDescription}" FontSize="13" Padding="5,2,0,0" />
  251. <!--<customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>-->
  252. <TextBlock Grid.Row="6" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  253. <TextBlock.Text>
  254. <MultiBinding StringFormat="{}{0}/{1}">
  255. <Binding Path="PMCRecipeResult.RecipeCurrentCounter"></Binding>
  256. <Binding Path="PMCRecipeResult.RecipeAllCounters"></Binding>
  257. </MultiBinding>
  258. </TextBlock.Text>
  259. </TextBlock>
  260. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  261. <Run Text="{Binding RtDataValues[PMC.HighTemperatureHeater.DeviceData].HighTemperatureHeaterPositionFeedBack}" />
  262. <Run Text=" "/>
  263. <Run Text="{Binding RtDataValues[PMC.HighTemperatureHeater.DeviceData].HighTemperatureHeaterTemperatureFeedBack,StringFormat=F1}" />
  264. <Run Text="°C"/>
  265. </TextBlock>
  266. </Grid>
  267. <Grid Canvas.Left="754" Canvas.Top="396" Width="280" Height="180" unity:GridOptions.LineBrush="#D8DEE5" unity:GridOptions.ShowBorder="True" Background="#FFFFFF" Visibility="{Binding PMDIsInstalled,Converter={StaticResource bool2VisibilityConverter}}">
  268. <Grid.RowDefinitions>
  269. <RowDefinition Height="24"/>
  270. <RowDefinition/>
  271. <RowDefinition/>
  272. <RowDefinition/>
  273. <RowDefinition/>
  274. <RowDefinition/>
  275. <RowDefinition/>
  276. <RowDefinition/>
  277. </Grid.RowDefinitions>
  278. <Grid.ColumnDefinitions>
  279. <ColumnDefinition Width="90"/>
  280. <ColumnDefinition/>
  281. </Grid.ColumnDefinitions>
  282. <TextBlock Grid.Row="0" Text="PMD" Grid.ColumnSpan="2" Foreground="White" FontSize="16" Padding="130,2,0,0" Background="#076DB6"/>
  283. <TextBlock Grid.Row="1" Text="Name" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  284. <TextBlock Grid.Row="2" Text="Step Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  285. <TextBlock Grid.Row="3" Text="Step Type" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  286. <TextBlock Grid.Row="4" Text="Step Time(s)" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  287. <TextBlock Grid.Row="5" Text="Step Desc" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  288. <!--<TextBlock Grid.Row="6" Text="Next Step" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>-->
  289. <TextBlock Grid.Row="6" Text="Cycle Num" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  290. <TextBlock Grid.Row="7" Text="Heater Info" FontSize="13" Padding="5,2,0,0" Background="#FAFAFA"/>
  291. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding PMDRecipeResult.RecipeName}" FontSize="13" Padding="5,2,0,0" />
  292. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  293. <TextBlock.Text>
  294. <MultiBinding StringFormat="{}{0}/{1}">
  295. <Binding Path="PMDRecipeResult.RecipeStepNumber"></Binding>
  296. <Binding Path="PMDRecipeResult.RecipeStepCount"></Binding>
  297. </MultiBinding>
  298. </TextBlock.Text>
  299. </TextBlock>
  300. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding PMDRecipeResult.RecipeStepType}" FontSize="13" Padding="5,2,0,0" />
  301. <TextBlock Grid.Row="4" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  302. <TextBlock.Text>
  303. <MultiBinding StringFormat="{}{0}/{1}">
  304. <Binding Path="PMDRecipeResult.RecipeStepDuringTime"></Binding>
  305. <Binding Path="PMDRecipeResult.RecipeStepSetTime"></Binding>
  306. </MultiBinding>
  307. </TextBlock.Text>
  308. </TextBlock>
  309. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding PMDRecipeResult.RecipeStepDescription}" FontSize="13" Padding="5,2,0,0" />
  310. <!--<customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>-->
  311. <TextBlock Grid.Row="6" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  312. <TextBlock.Text>
  313. <MultiBinding StringFormat="{}{0}/{1}">
  314. <Binding Path="PMDRecipeResult.RecipeCurrentCounter"></Binding>
  315. <Binding Path="PMDRecipeResult.RecipeAllCounters"></Binding>
  316. </MultiBinding>
  317. </TextBlock.Text>
  318. </TextBlock>
  319. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="13" Padding="5,2,0,0" >
  320. <Run Text="{Binding RtDataValues[PMD.HighTemperatureHeater.DeviceData].HighTemperatureHeaterPositionFeedBack}" />
  321. <Run Text=" "/>
  322. <Run Text="{Binding RtDataValues[PMD.HighTemperatureHeater.DeviceData].HighTemperatureHeaterTemperatureFeedBack,StringFormat=F1}" />
  323. <Run Text="°C"/>
  324. </TextBlock>
  325. </Grid>
  326. <!--<Grid Canvas.Left="10" Canvas.Top="45">
  327. <Grid.RowDefinitions>
  328. <RowDefinition/>
  329. </Grid.RowDefinitions>
  330. <Grid.ColumnDefinitions>
  331. <ColumnDefinition Width="Auto"/>
  332. <ColumnDefinition Width="Auto"/>
  333. <ColumnDefinition Width="Auto"/>
  334. <ColumnDefinition Width="Auto"/>
  335. <ColumnDefinition Width="Auto"/>
  336. <ColumnDefinition Width="Auto"/>
  337. <ColumnDefinition Width="Auto"/>
  338. <ColumnDefinition Width="Auto"/>
  339. <ColumnDefinition Width="Auto"/>
  340. <ColumnDefinition Width="Auto"/>
  341. <ColumnDefinition Width="Auto"/>
  342. <ColumnDefinition Width="Auto"/>
  343. <ColumnDefinition Width="Auto"/>
  344. <ColumnDefinition Width="Auto"/>
  345. </Grid.ColumnDefinitions>
  346. <TextBlock Text="TM Lid Closed" Margin="5,0,5,0" Grid.Column="0" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" />
  347. <Ellipse Grid.Column="1" Width="16" Height="16" Fill="{Binding RtDataValues[TM.TMLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  348. <TextBlock Text="LLA Lid Closed" Margin="15,0,5,0" Grid.Column="2" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" />
  349. <Ellipse Grid.Column="3" Width="16" Height="16" Fill="{Binding RtDataValues[TM.LLALidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  350. <TextBlock Text="LLB Lid Closed" Margin="15,0,5,0" Grid.Column="4" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" />
  351. <Ellipse Grid.Column="5" Width="16" Height="16" Fill="{Binding RtDataValues[TM.LLBLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  352. <TextBlock Text="PMA Lid Closed" Margin="15,0,5,0" Grid.Column="6" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" Visibility="{Binding PMAIsInstalled,Converter={StaticResource boolToVisibility2}}"/>
  353. <Ellipse Grid.Column="7" Width="16" Height="16" Fill="{Binding RtDataValues[PMA.IsLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0" Visibility="{Binding PMAIsInstalled,Converter={StaticResource boolToVisibility2}}"></Ellipse>
  354. <TextBlock Text="PMB Lid Closed" Margin="15,0,5,0" Grid.Column="8" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" Visibility="{Binding PMBIsInstalled,Converter={StaticResource boolToVisibility2}}"/>
  355. <Ellipse Grid.Column="9" Width="16" Height="16" Fill="{Binding RtDataValues[PMB.IsLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0" Visibility="{Binding PMBIsInstalled,Converter={StaticResource boolToVisibility2}}"></Ellipse>
  356. <TextBlock Text="PMC Lid Closed" Margin="15,0,5,0" Grid.Column="10" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" Visibility="{Binding PMCIsInstalled,Converter={StaticResource boolToVisibility2}}"/>
  357. <Ellipse Grid.Column="11" Width="16" Height="16" Fill="{Binding RtDataValues[PMC.IsLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0" Visibility="{Binding PMCIsInstalled,Converter={StaticResource boolToVisibility2}}"></Ellipse>
  358. <TextBlock Text="PMD Lid Closed" Margin="15,0,5,0" Grid.Column="12" FontSize="14" HorizontalAlignment="Center" VerticalAlignment="Center" Visibility="{Binding PMDIsInstalled,Converter={StaticResource boolToVisibility2}}"/>
  359. <Ellipse Grid.Column="13" Width="16" Height="16" Fill="{Binding RtDataValues[PMD.IsLidClosed],Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="0" Visibility="{Binding PMDIsInstalled,Converter={StaticResource boolToVisibility2}}"></Ellipse>
  360. </Grid>-->
  361. <Canvas Canvas.Top="40" Canvas.Left="-28">
  362. <Canvas Canvas.Left="176">
  363. <Viewbox Width="760" Height="760" Canvas.Top="100" Canvas.Left="-24" Stretch="Fill">
  364. <Canvas Width="1000" Height="1000">
  365. <Canvas Canvas.Top="-300" Canvas.Left="00" Width="450" Height="800">
  366. <ctrls:NiceMainTMWithLoadLock Canvas.Left="380" Canvas.Top="90"
  367. PMADoorIsOpen="{Binding RtDataValues[TM.PMASlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" PMBDoorIsOpen="{Binding RtDataValues[TM.PMBSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" PMCDoorIsOpen="{Binding RtDataValues[TM.PMCSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" PMDDoorIsOpen="{Binding RtDataValues[TM.PMDSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" LLATDoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" LLBTDoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" LLAEDoorIsOpen="{Binding RtDataValues[TM.LLAESlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" LLBEDoorIsOpen="{Binding RtDataValues[TM.LLBESlitDoor.IsClosed],Converter={StaticResource BoolToBool}}"
  368. TMIsOnline="{Binding RtDataValues[TM.IsOnline]}" LLAIsOnline="{Binding RtDataValues[LLA.IsOnline]}" LLBIsOnline="{Binding RtDataValues[LLB.IsOnline]}"
  369. LLAWafer="{Binding LLAWafer}" LLBWafer="{Binding LLBWafer}" IsEnabled="{Binding RtDataValues[TM.IsOnline],Converter={StaticResource BoolToBool}}"/>
  370. <ctrls:XinSongRobot Width="95" Height="95" Canvas.Left="446" Canvas.Top="505" Blade1RobotXAction="{Binding Blade1NiceXinSongWaferRobotXAction}" Blade2RobotXAction="{Binding Blade2NiceXinSongWaferRobotXAction}" BladeRobotTAction="{Binding BladeNiceXinSongWaferRobotTAction}" Blade1RobotWafer="{Binding TMBladeAWafer}" Blade2RobotWafer="{Binding TMBladeBWafer}" Opacity="{Binding RtDataValues[TM.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="False"/>
  371. <TextBlock Canvas.Left="430" Canvas.Top="605" FontSize="20" Width="180" Block.TextAlignment="Center" Opacity="{Binding RtDataValues[TM.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}">
  372. <TextBlock.Text>
  373. <MultiBinding StringFormat="{}TM({0:F1}{1})">
  374. <Binding Path="RtDataValues[TM.TMProcessGauge.Value]"/>
  375. <Binding Path="PressureType"/>
  376. </MultiBinding>
  377. </TextBlock.Text>
  378. </TextBlock>
  379. <ctrls:NiceTMChamber ModuleName="PMA" RotateTransformValue="-90" Width="162" Height="162" Canvas.Left="225" Canvas.Top="607" RobotWafer="{Binding PMAWafer}" PMVisibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Opacity="{Binding RtDataValues[PMA.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="{Binding RtDataValues[PMA.IsOnline],Converter={StaticResource BoolToBool}}" PressureValue="{Binding RtDataValues[PMA.CalculationPressure]}" Unit="{Binding PressureType}" ChamberType="{Binding PMAChamberType}"/>
  380. <ctrls:NiceTMChamber ModuleName="PMB" RotateTransformValue="-30" Width="162" Height="162" Canvas.Left="305" Canvas.Top="307" RobotWafer="{Binding PMBWafer}" PMVisibility="{Binding PMBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Opacity="{Binding RtDataValues[PMB.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="{Binding RtDataValues[PMB.IsOnline],Converter={StaticResource BoolToBool}}" PressureValue="{Binding RtDataValues[PMB.CalculationPressure]}" Unit="{Binding PressureType}" ChamberType="{Binding PMBChamberType}"/>
  381. <ctrls:NiceTMChamber ModuleName="PMC" RotateTransformValue="30" Width="162" Height="162" Canvas.Left="608" Canvas.Top="227" RobotWafer="{Binding PMCWafer}" PMVisibility="{Binding PMCIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Opacity="{Binding RtDataValues[PMC.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="{Binding RtDataValues[PMC.IsOnline],Converter={StaticResource BoolToBool}}" PressureValue="{Binding RtDataValues[PMC.CalculationPressure]}" Unit="{Binding PressureType}" ChamberType="{Binding PMCChamberType}"/>
  382. <ctrls:NiceTMChamber ModuleName="PMD" RotateTransformValue="90" Width="162" Height="162" Canvas.Left="826" Canvas.Top="443" RobotWafer="{Binding PMDWafer}" PMVisibility="{Binding PMDIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" Opacity="{Binding RtDataValues[PMD.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="{Binding RtDataValues[PMD.IsOnline],Converter={StaticResource BoolToBool}}" PressureValue="{Binding RtDataValues[PMD.CalculationPressure]}" Unit="{Binding PressureType}" ChamberType="{Binding PMDChamberType}"/>
  383. <userControls:NiceEFEM Canvas.Left="220" Canvas.Top="795" Width="600" Height="410"
  384. Aligner1Wafer="{Binding Aligner1Wafer}" RobotAWaferInfo="{Binding EFEMBladeAWafer}" RobotBWaferInfo="{Binding EFEMBladeBWafer}"
  385. Blade1RobotXAction="{Binding Blade1NiceGuangChuanWaferRobotXAction}" Blade2RobotXAction="{Binding Blade2NiceGuangChuanWaferRobotXAction}" BladeRobotTAction="{Binding BladeNiceGuangChuanWaferRobotTAction}"
  386. 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]}"
  387. Opacity="{Binding RtDataValues[EFEM.IsOnline],Converter={StaticResource IsOnlineToOpacityConverter}}" IsEnabled="{Binding RtDataValues[EFEM.IsOnline],Converter={StaticResource BoolToBool}}"/>
  388. </Canvas>
  389. </Canvas>
  390. </Viewbox>
  391. </Canvas>
  392. <!--<TextBlock Canvas.Top="465" Canvas.Left="230" Text="LLA" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"></TextBlock>
  393. <TextBlock Canvas.Top="465" Canvas.Left="910" Text="LLB" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"></TextBlock>-->
  394. <userControls:EFEMFrontView UnitData="{Binding TMModuleInfo}" Title="TM Robot" Canvas.Top="680" Canvas.Left="100" IsEnabled="{Binding RtDataValues[TM.IsOnline],Converter={StaticResource BoolToBool}}" SlotWidth="70"/>
  395. <userControls:FOUPFrontView UnitData="{Binding LLAModuleInfo}" VerticalAlignment="Top" Canvas.Top="600" Canvas.Left="120" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" ShowTitle="True" IsEnabled="{Binding RtDataValues[LLA.IsOnline],Converter={StaticResource BoolToBool}}" SlotWidth="72"/>
  396. <userControls:FOUPFrontView UnitData="{Binding LLBModuleInfo}" VerticalAlignment="Top" Canvas.Top="600" Canvas.Left="840" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" ShowTitle="True" IsEnabled="{Binding RtDataValues[LLB.IsOnline],Converter={StaticResource BoolToBool}}" SlotWidth="72"/>
  397. <userControls:EFEMFrontView UnitData="{Binding EFEMModuleInfo}" Title="Efem Robot" Canvas.Top="680" Canvas.Left="840" IsEnabled="{Binding RtDataValues[EFEM.IsOnline],Converter={StaticResource BoolToBool}}" SlotWidth="70"/>
  398. <Canvas Canvas.Top="-40" Canvas.Left="30">
  399. <userControls:TextboxWithLabel Canvas.Left="320" Canvas.Top="375" LabelValue="{Binding PressureType, StringFormat=CM5({0})}" TextBoxValue="{Binding RtDataValues[TM.LLAPressureGauge.Value],StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  400. <Ellipse Width="15" Height="15" Canvas.Left="360" Canvas.Top="426" Fill="{Binding RtDataValues[TM.IoSensor.LLAATMSwitch.Value],Converter={StaticResource boolToColor}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  401. <Ellipse Width="15" Height="15" Canvas.Left="360" Canvas.Top="446" Fill="{Binding RtDataValues[TM.IoSensor.LLAVacSwitch.Value],Converter={StaticResource boolToColor}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  402. <TextBlock Text="ATM" Canvas.Left="330" Canvas.Top="426"/>
  403. <TextBlock Text="VAC" Canvas.Left="330" Canvas.Top="446"/>
  404. </Canvas>
  405. <Canvas Canvas.Top="-40" Canvas.Left="-125">
  406. <userControls:TextboxWithLabel Canvas.Left="805" Canvas.Top="375" LabelValue="{Binding PressureType, StringFormat=CM4({0})}" TextBoxValue="{Binding RtDataValues[TM.LLBPressureGauge.Value],StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  407. <Ellipse Width="15" Height="15" Canvas.Left="820" Canvas.Top="426" Fill="{Binding RtDataValues[TM.IoSensor.LLBATMSwitch.Value],Converter={StaticResource boolToColor}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  408. <Ellipse Width="15" Height="15" Canvas.Left="820" Canvas.Top="446" Fill="{Binding RtDataValues[TM.IoSensor.LLBVacSwitch.Value],Converter={StaticResource boolToColor}}" Stroke="Silver" StrokeThickness="0"></Ellipse>
  409. <TextBlock Text="ATM" Canvas.Left="840" Canvas.Top="426"/>
  410. <TextBlock Text="VAC" Canvas.Left="840" Canvas.Top="446"/>
  411. </Canvas>
  412. </Canvas>
  413. </Canvas>
  414. <Canvas Grid.Column="1" Background="#C7D2DF">
  415. <TabPanel Margin="30 10 0 0" >
  416. <StackPanel>
  417. <Border BorderThickness="0,0,0,1" BorderBrush="#E7F0FB" Canvas.Top="5" Canvas.Left="10" Width="810" Margin="0 0 0 2">
  418. <StackPanel Orientation="Horizontal" Margin="30,0,0,5" >
  419. <Button Width="105" Height="25" Content="Home" Command="{Binding HomeAllCommand}" Margin="5,0,0,0" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" FontSize="15"/>
  420. <Button Width="105" Height="25" Content="Return Wafer" Command="{Binding ReturnAllWaferCommand}" IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Margin="30,0,0,0" FontSize="15"/>
  421. <Button Width="105" Height="25" Content="Abort" Command="{Binding AbortAllCommand}" IsEnabled="{Binding RtDataValues[System.IsBusy]}" Margin="30 0 0 0" FontSize="15"/>
  422. <Button Width="105" Height="25" Content="{Binding RouteState}" Command="{Binding ResumeAllJobCommand}" IsEnabled="{Binding RtDataValues[System.IsAutoMode]}" Margin="30 0 0 0" FontSize="15"/>
  423. <RadioButton Content="Manual" FontSize="14" Width="105" Height="25" Margin="30 0 5 0" Style="{StaticResource Button_RadioButton}" Command="{Binding EnableManualCommand}" IsChecked="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" />
  424. <RadioButton Content="Auto" FontSize="14" Width="105" Height="25" Margin="0 0 0 0" Style="{StaticResource Button_RadioButton}" Command="{Binding EnableAutoCommand}" IsChecked="{Binding RtDataValues[System.IsAutoMode]}"/>
  425. </StackPanel>
  426. </Border>
  427. <StackPanel Orientation="Horizontal" >
  428. <StackPanel Margin="2">
  429. <TextBox Background="#076DB6" Text="LP1" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" Foreground="White" FontSize="16"/>
  430. <local:NewWaferAssociationUnit WAInfo="{Binding LP1WaferAssociation}" ButtonIsEnable="{Binding ButtonIsEnableLP1}">
  431. <local:NewWaferAssociationUnit.CycleInfo>
  432. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}">
  433. <Binding Path="RtDataValues[LP1.CycleSetPoint]"></Binding>
  434. <Binding Path="RtDataValues[LP1.CycledCount]"></Binding>
  435. <Binding Path="RtDataValues[LP1.CycledWafer]"></Binding>
  436. </MultiBinding>
  437. </local:NewWaferAssociationUnit.CycleInfo>
  438. </local:NewWaferAssociationUnit>
  439. <!--<TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="14">
  440. <TextBlock.Text>
  441. <MultiBinding StringFormat="{}Wafer Count:{0} Throughput:{1}">
  442. <Binding Path="LP1WaferCount"></Binding>
  443. <Binding Path="RtDataValues[LP1.Throughput]"></Binding>
  444. </MultiBinding>
  445. </TextBlock.Text>
  446. </TextBlock>-->
  447. <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" IsEnabled="{Binding ButtonIsEnableLP1}">
  448. <Button Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="85" Height="25" Command="{Binding LoadWaferCommand}" CommandParameter="LP1" IsEnabled="{Binding RtDataValues[LP1.IsLoaded],Converter={StaticResource BoolToBool}}" FontSize="14"/>
  449. <Button Content="UnLoad" HorizontalAlignment="Center" Margin="10,5,0,0" Width="85" Height="25" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP1" IsEnabled="{Binding RtDataValues[LP1.IsLoaded]}" FontSize="14"/>
  450. </StackPanel>
  451. </StackPanel>
  452. <StackPanel Margin="2">
  453. <TextBox Background="#076DB6" Text="LP2" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" Foreground="White" FontSize="16"/>
  454. <local:NewWaferAssociationUnit WAInfo="{Binding LP2WaferAssociation}" ButtonIsEnable="{Binding ButtonIsEnableLP2}">
  455. <local:NewWaferAssociationUnit.CycleInfo>
  456. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}">
  457. <Binding Path="RtDataValues[LP2.CycleSetPoint]"></Binding>
  458. <Binding Path="RtDataValues[LP2.CycledCount]"></Binding>
  459. <Binding Path="RtDataValues[LP2.CycledWafer]"></Binding>
  460. </MultiBinding>
  461. </local:NewWaferAssociationUnit.CycleInfo>
  462. </local:NewWaferAssociationUnit>
  463. <!--<TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="14">
  464. <TextBlock.Text>
  465. <MultiBinding StringFormat="{}Wafer Count:{0} Throughput:{1}">
  466. <Binding Path="LP2WaferCount"></Binding>
  467. <Binding Path="RtDataValues[LP2.Throughput]"></Binding>
  468. </MultiBinding>
  469. </TextBlock.Text>
  470. </TextBlock>-->
  471. <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" IsEnabled="{Binding ButtonIsEnableLP2}">
  472. <Button Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="85" Height="25" Command="{Binding LoadWaferCommand}" CommandParameter="LP2" IsEnabled="{Binding RtDataValues[LP2.IsLoaded],Converter={StaticResource BoolToBool}}" FontSize="14"/>
  473. <Button Content="UnLoad" HorizontalAlignment="Center" Margin="10,5,0,0" Width="85" Height="25" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP2" IsEnabled="{Binding RtDataValues[LP2.IsLoaded]}" FontSize="14"/>
  474. </StackPanel>
  475. </StackPanel>
  476. <StackPanel Margin="2">
  477. <TextBox Background="#076DB6" Text="LP3" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True" Foreground="White" FontSize="16"/>
  478. <local:NewWaferAssociationUnit WAInfo="{Binding LP3WaferAssociation}" ButtonIsEnable="{Binding ButtonIsEnableLP3}">
  479. <local:NewWaferAssociationUnit.CycleInfo>
  480. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}">
  481. <Binding Path="RtDataValues[LP3.CycleSetPoint]"></Binding>
  482. <Binding Path="RtDataValues[LP3.CycledCount]"></Binding>
  483. <Binding Path="RtDataValues[LP3.CycledWafer]"></Binding>
  484. </MultiBinding>
  485. </local:NewWaferAssociationUnit.CycleInfo>
  486. </local:NewWaferAssociationUnit>
  487. <!--<TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="14">
  488. <TextBlock.Text>
  489. <MultiBinding StringFormat="{}Wafer Count:{0} Throughput:{1}">
  490. <Binding Path="LP3WaferCount"></Binding>
  491. <Binding Path="RtDataValues[LP3.Throughput]"></Binding>
  492. </MultiBinding>
  493. </TextBlock.Text>
  494. </TextBlock>-->
  495. <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" IsEnabled="{Binding ButtonIsEnableLP3}">
  496. <Button Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="85" Height="25" Command="{Binding LoadWaferCommand}" CommandParameter="LP3" IsEnabled="{Binding RtDataValues[LP3.IsLoaded],Converter={StaticResource BoolToBool}}" FontSize="14"/>
  497. <Button Content="UnLoad" HorizontalAlignment="Center" Margin="10,5,0,0" Width="85" Height="25" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP3" IsEnabled="{Binding RtDataValues[LP3.IsLoaded]}" FontSize="14"/>
  498. </StackPanel>
  499. </StackPanel>
  500. </StackPanel>
  501. </StackPanel>
  502. </TabPanel>
  503. </Canvas>
  504. </Grid>
  505. </UserControl>