WaferHistoryView.xaml 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <UserControl x:Class="MECF.Framework.UI.Client.CenterViews.DataLogs.WaferHistory.WaferHistoryView"
  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:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
  6. xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
  7. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  8. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  9. xmlns:interop="clr-namespace:Microsoft.DwayneNeed.Interop;assembly=Microsoft.DwayneNeed"
  10. xmlns:toolkit="http://schemas.xceed.com/wpf/xaml/toolkit"
  11. xmlns:s="http://schemas.abtsoftware.co.uk/scichart"
  12. xmlns:micro="clr-namespace:Caliburn.Micro"
  13. mc:Ignorable="d"
  14. d:DesignHeight="450" d:DesignWidth="1800">
  15. <Grid IsEnabled="{Binding IsPermission}">
  16. <Grid.ColumnDefinitions>
  17. <ColumnDefinition Width="280"/>
  18. <ColumnDefinition/>
  19. </Grid.ColumnDefinitions>
  20. <Grid>
  21. <Grid.RowDefinitions>
  22. <RowDefinition Height="Auto"/>
  23. <RowDefinition Height="Auto"/>
  24. <RowDefinition Height="Auto"/>
  25. <RowDefinition Height="Auto"/>
  26. <RowDefinition Height="Auto"/>
  27. </Grid.RowDefinitions>
  28. <Label Content="Query Condition" Style="{DynamicResource Table_TitleStyle}" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="30"/>
  29. <Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_Content}" Padding="5,1">
  30. <StackPanel Margin="0,5">
  31. <StackPanel Orientation="Horizontal">
  32. <TextBlock Text="Start Time" Width="70" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" VerticalAlignment="Center"/>
  33. <interop:AirspaceDecorator AirspaceMode="Redirect" IsInputRedirectionEnabled="True" IsOutputRedirectionEnabled="True">
  34. <wfi:WindowsFormsHost Margin="0,0,0,0" FontSize="14" FontFamily="Arial" Width="170" Height="22" VerticalAlignment="Center">
  35. <wf:DateTimePicker x:Name="wfTimeFrom" Value="2011-8-1" CustomFormat="yyyy/MM/dd HH:mm:ss" Format="Custom"></wf:DateTimePicker>
  36. </wfi:WindowsFormsHost>
  37. </interop:AirspaceDecorator>
  38. </StackPanel>
  39. <StackPanel Orientation="Horizontal" Margin="0,5,0,0">
  40. <TextBlock Text="End Time" Width="70" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" VerticalAlignment="Center"/>
  41. <interop:AirspaceDecorator AirspaceMode="Redirect" IsInputRedirectionEnabled="True" IsOutputRedirectionEnabled="True" >
  42. <wfi:WindowsFormsHost Margin="0,0,0,0" FontSize="14" FontFamily="Arial" Width="170" Height="22" VerticalAlignment="Center">
  43. <wf:DateTimePicker x:Name="wfTimeTo" Value="2013-8-1" CustomFormat="yyyy/MM/dd HH:mm:ss" Format="Custom"></wf:DateTimePicker>
  44. </wfi:WindowsFormsHost>
  45. </interop:AirspaceDecorator>
  46. </StackPanel>
  47. </StackPanel>
  48. </Border>
  49. <Label Grid.Row="2" Margin="0,5,0,0" Content="Query Option" Style="{DynamicResource Table_TitleStyle}" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="30"/>
  50. <Border Grid.Row="3" BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_Content}" Padding="5,1">
  51. <StackPanel Margin="0,5">
  52. <StackPanel Orientation="Horizontal">
  53. <TextBlock Text="Load Port" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  54. <!--<TextBox x:Name="tbLoadPort" Text="" Width="115" Height="25" Margin="5,0,0,0"/>-->
  55. <toolkit:CheckComboBox x:Name="tbLoadPort" ItemsSource="{Binding SourceLP}" Width="120" FontFamily="Arial" FontSize="14" Height="25" Margin="5,0,0,0"
  56. HorizontalAlignment="Center"
  57. VerticalAlignment="Center"
  58. SelectedValue="{Binding SelectedValueLP}" ToolTip="Value">
  59. </toolkit:CheckComboBox>
  60. </StackPanel>
  61. <StackPanel Orientation="Horizontal" Margin="0,5,0,0">
  62. <TextBlock Text="Wafer ID" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  63. <TextBox x:Name="tbWaferID" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  64. </StackPanel>
  65. <StackPanel Orientation="Horizontal">
  66. <TextBlock Text="Lot ID" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  67. <TextBox x:Name="tbLotID" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  68. </StackPanel>
  69. <StackPanel Orientation="Horizontal">
  70. <TextBlock Text="Carrier ID" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  71. <TextBox x:Name="tbCarrierID" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  72. </StackPanel>
  73. <!--<StackPanel Orientation="Horizontal">
  74. <TextBlock Text="Sequence Name" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  75. <TextBox x:Name="tbSequenceName" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  76. </StackPanel>
  77. <StackPanel Orientation="Horizontal">
  78. <TextBlock Text="Process Chamber" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  79. <TextBox x:Name="tbProcessChamber" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  80. </StackPanel>
  81. <StackPanel Orientation="Horizontal">
  82. <TextBlock Text="Process Recipe" Width="120" FontFamily="Arial" FontSize="14" VerticalAlignment="Center" TextAlignment="Right"/>
  83. <TextBox x:Name="tbProcessRecipe" Text="" Width="115" Height="25" Margin="5,0,0,0"/>
  84. </StackPanel>-->
  85. </StackPanel>
  86. </Border>
  87. <Grid Grid.Row="4">
  88. <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,20">
  89. <Button Content="Query" Width="100" Height="30">
  90. <i:Interaction.Triggers>
  91. <i:EventTrigger EventName="Click">
  92. <micro:ActionMessage MethodName="Query">
  93. <micro:Parameter Value="{Binding ElementName=tbLoadPort, Path=SelectedValue}"/>
  94. <micro:Parameter Value="{Binding ElementName=tbWaferID, Path=Text}"/>
  95. <micro:Parameter Value="{Binding ElementName=tbLotID, Path=Text}"/>
  96. <micro:Parameter Value="{Binding ElementName=tbCarrierID, Path=Text}"/>
  97. <micro:Parameter Value="{Binding ElementName=tbSequenceName, Path=Text}"/>
  98. <micro:Parameter Value="{Binding ElementName=tbProcessChamber, Path=Text}"/>
  99. <micro:Parameter Value="{Binding ElementName=tbProcessRecipe, Path=Text}"/>
  100. </micro:ActionMessage>
  101. </i:EventTrigger>
  102. </i:Interaction.Triggers>
  103. </Button>
  104. <Button Content="Export" Width="100" Height="30" Margin="0,10,0,0">
  105. <i:Interaction.Triggers>
  106. <i:EventTrigger EventName="Click">
  107. <micro:ActionMessage MethodName="Export">
  108. </micro:ActionMessage>
  109. </i:EventTrigger>
  110. </i:Interaction.Triggers>
  111. </Button>
  112. <Button Content="ExportMove" Width="100" Height="30" Margin="0,10,0,0">
  113. <i:Interaction.Triggers>
  114. <i:EventTrigger EventName="Click">
  115. <micro:ActionMessage MethodName="ExportMove">
  116. </micro:ActionMessage>
  117. </i:EventTrigger>
  118. </i:Interaction.Triggers>
  119. </Button>
  120. </StackPanel>
  121. </Grid>
  122. </Grid>
  123. <Grid Grid.Column="1" Margin="10,0,0,0">
  124. <Grid.RowDefinitions>
  125. <RowDefinition Height="520"/>
  126. <RowDefinition Height="250"/>
  127. </Grid.RowDefinitions>
  128. <DataGrid AutoGenerateColumns="False" Name="dataGrid_LotList" ItemsSource="{Binding Wafers}" CanUserAddRows="False" CanUserResizeColumns="True" CanUserResizeRows="False" HorizontalAlignment="Left"
  129. FontFamily="Arial" FontSize="14" DataContextChanged="dataGrid_LotList_DataContextChanged">
  130. <DataGrid.Columns>
  131. <DataGridTextColumn Width="200" Binding="{Binding CreateTime, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  132. <DataGridTextColumn.HeaderTemplate >
  133. <DataTemplate>
  134. <TextBlock Text="Create Time" />
  135. </DataTemplate>
  136. </DataGridTextColumn.HeaderTemplate>
  137. <DataGridTextColumn.CellStyle>
  138. <Style TargetType="DataGridCell">
  139. <Setter Property="ToolTip" Value="{Binding CreateTime}" />
  140. </Style>
  141. </DataGridTextColumn.CellStyle>
  142. </DataGridTextColumn>
  143. <DataGridTextColumn Width="200" Binding="{Binding DeleteTime, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  144. <DataGridTextColumn.HeaderTemplate >
  145. <DataTemplate>
  146. <TextBlock Text="Delete Time" />
  147. </DataTemplate>
  148. </DataGridTextColumn.HeaderTemplate>
  149. <DataGridTextColumn.CellStyle>
  150. <Style TargetType="DataGridCell">
  151. <Setter Property="ToolTip" Value="{Binding DeleteTime}" />
  152. </Style>
  153. </DataGridTextColumn.CellStyle>
  154. </DataGridTextColumn>
  155. <DataGridTextColumn Width="200" CanUserSort="True" Binding="{Binding LoadPort, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  156. <DataGridTextColumn.HeaderTemplate >
  157. <DataTemplate>
  158. <TextBlock Text="Load Port" />
  159. </DataTemplate>
  160. </DataGridTextColumn.HeaderTemplate>
  161. <DataGridTextColumn.CellStyle>
  162. <Style TargetType="DataGridCell">
  163. <Setter Property="ToolTip" Value="{Binding LoadPort}" />
  164. </Style>
  165. </DataGridTextColumn.CellStyle>
  166. </DataGridTextColumn>
  167. <DataGridTextColumn Width="160" CanUserSort="True" Binding="{Binding Slot, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  168. <DataGridTextColumn.HeaderTemplate >
  169. <DataTemplate>
  170. <TextBlock Text="Slot" />
  171. </DataTemplate>
  172. </DataGridTextColumn.HeaderTemplate>
  173. <DataGridTextColumn.CellStyle>
  174. <Style TargetType="DataGridCell">
  175. <Setter Property="ToolTip" Value="{Binding Slot}" />
  176. </Style>
  177. </DataGridTextColumn.CellStyle>
  178. </DataGridTextColumn>
  179. <DataGridTextColumn Width="200" CanUserSort="True" Binding="{Binding CarrierID, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  180. <DataGridTextColumn.HeaderTemplate >
  181. <DataTemplate>
  182. <TextBlock Text="Carrier ID" />
  183. </DataTemplate>
  184. </DataGridTextColumn.HeaderTemplate>
  185. <DataGridTextColumn.CellStyle>
  186. <Style TargetType="DataGridCell">
  187. <Setter Property="ToolTip" Value="{Binding CarrierID}" />
  188. </Style>
  189. </DataGridTextColumn.CellStyle>
  190. </DataGridTextColumn>
  191. <DataGridTextColumn Width="200" CanUserSort="True" Binding="{Binding LotID, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  192. <DataGridTextColumn.HeaderTemplate >
  193. <DataTemplate>
  194. <TextBlock Text="Lot ID" />
  195. </DataTemplate>
  196. </DataGridTextColumn.HeaderTemplate>
  197. <DataGridTextColumn.CellStyle>
  198. <Style TargetType="DataGridCell">
  199. <Setter Property="ToolTip" Value="{Binding LotID}" />
  200. </Style>
  201. </DataGridTextColumn.CellStyle>
  202. </DataGridTextColumn>
  203. <DataGridTextColumn Width="200" CanUserSort="True" Binding="{Binding WaferID, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  204. <DataGridTextColumn.HeaderTemplate >
  205. <DataTemplate>
  206. <TextBlock Text="Wafer ID" />
  207. </DataTemplate>
  208. </DataGridTextColumn.HeaderTemplate>
  209. <DataGridTextColumn.CellStyle>
  210. <Style TargetType="DataGridCell">
  211. <Setter Property="ToolTip" Value="{Binding WaferID}" />
  212. </Style>
  213. </DataGridTextColumn.CellStyle>
  214. </DataGridTextColumn>
  215. <DataGridTextColumn Width="200" CanUserSort="True" Binding="{Binding Status, Mode=OneWay}" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  216. <DataGridTextColumn.HeaderTemplate >
  217. <DataTemplate>
  218. <TextBlock Text="Status" />
  219. </DataTemplate>
  220. </DataGridTextColumn.HeaderTemplate>
  221. <DataGridTextColumn.CellStyle>
  222. <Style TargetType="DataGridCell">
  223. <Setter Property="ToolTip" Value="{Binding Status}" />
  224. </Style>
  225. </DataGridTextColumn.CellStyle>
  226. </DataGridTextColumn>
  227. </DataGrid.Columns>
  228. <i:Interaction.Triggers>
  229. <i:EventTrigger EventName="SelectionChanged">
  230. <micro:ActionMessage MethodName="WaferHistoryChanged">
  231. <micro:Parameter Value="{Binding ElementName=dataGrid_LotList, Path=SelectedItem}"/>
  232. </micro:ActionMessage>
  233. </i:EventTrigger>
  234. </i:Interaction.Triggers>
  235. </DataGrid>
  236. <Grid Grid.Row="1" Margin="0,5,0,0" HorizontalAlignment="Left">
  237. <Grid.ColumnDefinitions>
  238. <ColumnDefinition Width="1585"/>
  239. <ColumnDefinition Width="auto"/>
  240. </Grid.ColumnDefinitions>
  241. <DataGrid AutoGenerateColumns="False" CanUserAddRows="False" CanUserResizeRows="False" CanUserResizeColumns="True" ItemsSource="{Binding Movements}"
  242. FontFamily="Arial" FontSize="14">
  243. <DataGrid.Columns>
  244. <DataGridTextColumn Width="200" Binding="{Binding Time, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  245. <DataGridTextColumn.HeaderTemplate >
  246. <DataTemplate>
  247. <TextBlock Text="Time" />
  248. </DataTemplate>
  249. </DataGridTextColumn.HeaderTemplate>
  250. <DataGridTextColumn.CellStyle>
  251. <Style TargetType="DataGridCell">
  252. <Setter Property="ToolTip" Value="{Binding Time}" />
  253. </Style>
  254. </DataGridTextColumn.CellStyle>
  255. </DataGridTextColumn>
  256. <DataGridTextColumn Width="200" Binding="{Binding Station, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  257. <DataGridTextColumn.HeaderTemplate >
  258. <DataTemplate>
  259. <TextBlock Text="Station" />
  260. </DataTemplate>
  261. </DataGridTextColumn.HeaderTemplate>
  262. <DataGridTextColumn.CellStyle>
  263. <Style TargetType="DataGridCell">
  264. <Setter Property="ToolTip" Value="{Binding Station}" />
  265. </Style>
  266. </DataGridTextColumn.CellStyle>
  267. </DataGridTextColumn>
  268. <DataGridTextColumn Width="200" Binding="{Binding Slot, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  269. <DataGridTextColumn.HeaderTemplate >
  270. <DataTemplate>
  271. <TextBlock Text="Slot" />
  272. </DataTemplate>
  273. </DataGridTextColumn.HeaderTemplate>
  274. <DataGridTextColumn.CellStyle>
  275. <Style TargetType="DataGridCell">
  276. <Setter Property="ToolTip" Value="{Binding Slot}" />
  277. </Style>
  278. </DataGridTextColumn.CellStyle>
  279. </DataGridTextColumn>
  280. <DataGridTextColumn Width="200" Binding="{Binding Status, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  281. <DataGridTextColumn.HeaderTemplate >
  282. <DataTemplate>
  283. <TextBlock Text="Status" />
  284. </DataTemplate>
  285. </DataGridTextColumn.HeaderTemplate>
  286. <DataGridTextColumn.CellStyle>
  287. <Style TargetType="DataGridCell">
  288. <Setter Property="ToolTip" Value="{Binding Status}" />
  289. </Style>
  290. </DataGridTextColumn.CellStyle>
  291. </DataGridTextColumn>
  292. <DataGridTextColumn Width="200" Binding="{Binding WaferID, Mode=OneWay}" CanUserSort="True" CanUserReorder="False" IsReadOnly="True" CanUserResize="False" >
  293. <DataGridTextColumn.HeaderTemplate >
  294. <DataTemplate>
  295. <TextBlock Text="Wafer ID" />
  296. </DataTemplate>
  297. </DataGridTextColumn.HeaderTemplate>
  298. <DataGridTextColumn.CellStyle>
  299. <Style TargetType="DataGridCell">
  300. <Setter Property="ToolTip" Value="{Binding WaferID}" />
  301. </Style>
  302. </DataGridTextColumn.CellStyle>
  303. </DataGridTextColumn>
  304. </DataGrid.Columns>
  305. </DataGrid>
  306. <!--<s:SciChartSurface x:Name="sciChart" BorderBrush="Gray" Grid.Column="1" Width="500"
  307. s:ThemeManager.Theme="ExpressionLight"
  308. RenderableSeries="{Binding RenderableSeries}" Annotations="{Binding Annotations}">
  309. <s:SciChartSurface.XAxis>
  310. <s:NumericAxis AxisTitle="Number of Samples (per Series)" AutoRange="Always"/>
  311. </s:SciChartSurface.XAxis>
  312. <s:SciChartSurface.YAxis>
  313. <s:NumericAxis AxisTitle="Value" AutoRange="Never" AxisAlignment="Left" VisibleRange="0,8" LabelProvider="{Binding YLabelProvider}" />
  314. </s:SciChartSurface.YAxis>
  315. <s:SciChartSurface.ChartModifier>
  316. <s:ModifierGroup ExecuteOn="MouseDoubleClick">
  317. <s:CursorModifier IsEnabled="True" ShowTooltipOn="MouseOver" ShowAxisLabels="True" SourceMode="AllSeries" ShowTooltip="False" />
  318. </s:ModifierGroup>
  319. </s:SciChartSurface.ChartModifier>
  320. </s:SciChartSurface>-->
  321. </Grid>
  322. </Grid>
  323. </Grid>
  324. </UserControl>