ScheduledMaitView.xaml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. <UserControl
  2. x:Class="FurnaceUI.Views.Editors.ScheduledMaitView"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:cal="http://www.caliburn.org"
  6. xmlns:converter="clr-namespace:FurnaceUI.Converter"
  7. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  8. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  9. xmlns:local="clr-namespace:FurnaceUI.Views.Editors"
  10. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  11. Background="White"
  12. xmlns:converterTime="clr-namespace:MECF.Framework.UI.Client.Converter;assembly=MECF.Framework.UI.Client"
  13. xmlns:enumData="clr-namespace:MECF.Framework.Common.CommonData.EnumData;assembly=MECF.Framework.Common"
  14. FontFamily="Segoe"
  15. mc:Ignorable="d">
  16. <UserControl.Resources>
  17. <local:EnumToBoolConverter x:Key="EnumToBoolConverter" />
  18. <converter:IsCheckShowStringConverter x:Key="isCheckShowStringConverter" />
  19. <converterTime:SecondsToHourMinConverter x:Key="SecondsToHourMinConverter" />
  20. <Style BasedOn="{StaticResource ExOnlyVerticalScrollBar}" TargetType="ScrollBar" />
  21. </UserControl.Resources>
  22. <Grid>
  23. <Grid.RowDefinitions>
  24. <RowDefinition Height="120" />
  25. <RowDefinition Height="*" />
  26. </Grid.RowDefinitions>
  27. <Grid>
  28. <Grid.RowDefinitions>
  29. <RowDefinition />
  30. <RowDefinition />
  31. </Grid.RowDefinitions>
  32. <StackPanel Orientation="Horizontal">
  33. <RadioButton
  34. x:Name="Carrier"
  35. Width="150"
  36. Height="45"
  37. Margin="5,0"
  38. Content="Carrier/Wafer"
  39. FontSize="18"
  40. IsChecked="{Binding DataItemType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DataItemEnum.CarrierWafer}}" />
  41. <RadioButton
  42. Width="150"
  43. Height="45"
  44. Margin="5,0"
  45. Content="Boat"
  46. FontSize="18"
  47. IsChecked="{Binding DataItemType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DataItemEnum.Boat}}" />
  48. <RadioButton
  49. Width="150"
  50. Height="45"
  51. Margin="5,0"
  52. Content="Conditioning"
  53. Visibility="Collapsed"
  54. FontSize="18"
  55. IsChecked="{Binding DataItemType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DataItemEnum.Conditioning}}" />
  56. <RadioButton
  57. x:Name="Reactor"
  58. Width="150"
  59. Height="45"
  60. Margin="5,0"
  61. Content="Reactor"
  62. FontSize="18"
  63. IsChecked="{Binding DataItemType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DataItemEnum.Reactor}}" />
  64. </StackPanel>
  65. <StackPanel Grid.Row="1" Orientation="Horizontal">
  66. <StackPanel Orientation="Horizontal" Visibility="{Binding ElementName=Carrier, Path=IsChecked, Converter={StaticResource bool2VisibilityConverter}}">
  67. <RadioButton
  68. Width="150"
  69. Height="45"
  70. Margin="5,0"
  71. Content="Side Dummy"
  72. FontSize="18"
  73. IsChecked="{Binding DummyType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DummyEnum.SideDummy}}" />
  74. <RadioButton
  75. Width="150"
  76. Height="45"
  77. Margin="5,0"
  78. Content="Fill Dummy"
  79. FontSize="18"
  80. IsChecked="{Binding DummyType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:DummyEnum.FillDummy}}" />
  81. </StackPanel>
  82. <StackPanel Orientation="Horizontal" Visibility="{Binding ElementName=Reactor, Path=IsChecked, Converter={StaticResource bool2VisibilityConverter}}">
  83. <RadioButton
  84. Width="150"
  85. Height="45"
  86. Margin="5,0"
  87. Content="Recipe"
  88. FontSize="18"
  89. IsChecked="{Binding ReactorsType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:ReactorsEnum.Recipe}}" />
  90. <RadioButton
  91. Width="150"
  92. Height="45"
  93. Margin="5,0"
  94. Content="StepRunFreq"
  95. FontSize="18"
  96. IsChecked="{Binding ReactorsType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:ReactorsEnum.StepRunFreq}}" />
  97. <RadioButton
  98. Width="150"
  99. Height="45"
  100. Margin="5,0"
  101. Content="StepRunTime"
  102. FontSize="18"
  103. IsChecked="{Binding ReactorsType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:ReactorsEnum.StepRunTime}}" />
  104. <RadioButton
  105. Width="150"
  106. Height="45"
  107. Margin="5,0"
  108. Content="StepThickness"
  109. FontSize="18"
  110. IsChecked="{Binding ReactorsType, Converter={StaticResource EnumToBoolConverter}, ConverterParameter={x:Static enumData:ReactorsEnum.StepThickness}}" />
  111. </StackPanel>
  112. </StackPanel>
  113. </Grid>
  114. <ListView
  115. Name="OutLine"
  116. Grid.Row="1"
  117. Margin="10"
  118. HorizontalContentAlignment="Stretch"
  119. IsSynchronizedWithCurrentItem="True"
  120. ItemsSource="{Binding ScheduleMaintenanceDataItemListSource}">
  121. <ListView.ItemContainerStyle>
  122. <Style BasedOn="{StaticResource {x:Type ListViewItem}}" TargetType="{x:Type ListViewItem}">
  123. <Setter Property="cal:Message.Attach" Value="[Event PreviewMouseUp] = [Action SelectionChangedHandle($dataContext,OutLine.SelectedValue)]" />
  124. </Style>
  125. </ListView.ItemContainerStyle>
  126. <ListView.View>
  127. <GridView x:Name="GVOutLine">
  128. <GridView.Columns>
  129. <GridViewColumn Width="30">
  130. <GridViewColumn.CellTemplate>
  131. <DataTemplate>
  132. <Label
  133. Height="50"
  134. HorizontalContentAlignment="Center"
  135. VerticalContentAlignment="Center"
  136. Content="{Binding Number}" />
  137. </DataTemplate>
  138. </GridViewColumn.CellTemplate>
  139. <GridViewColumn.Header>
  140. <TextBlock Text="No" />
  141. </GridViewColumn.Header>
  142. </GridViewColumn>
  143. <GridViewColumn Width="200">
  144. <GridViewColumn.CellTemplate>
  145. <DataTemplate>
  146. <TextBlock
  147. HorizontalAlignment="Center"
  148. Text="{Binding Display}"
  149. TextBlock.TextAlignment="Center" />
  150. </DataTemplate>
  151. </GridViewColumn.CellTemplate>
  152. <GridViewColumn.Header>
  153. <TextBlock Text="Maintenance Name" />
  154. </GridViewColumn.Header>
  155. </GridViewColumn>
  156. <GridViewColumn Width="200">
  157. <GridViewColumn.CellTemplate>
  158. <DataTemplate>
  159. <TextBlock
  160. Margin="4"
  161. Text="{Binding Item}"
  162. TextBlock.TextAlignment="Center" />
  163. </DataTemplate>
  164. </GridViewColumn.CellTemplate>
  165. <GridViewColumn.Header>
  166. <TextBlock Text="Maintenance Item" />
  167. </GridViewColumn.Header>
  168. </GridViewColumn>
  169. <GridViewColumn Width="100">
  170. <GridViewColumn.CellTemplate>
  171. <DataTemplate>
  172. <TextBlock Width="132" Margin="4" HorizontalAlignment="Center" TextBlock.TextAlignment="Center" >
  173. <TextBlock.Style>
  174. <Style TargetType="TextBlock">
  175. <Setter Property="Text" Value="{Binding CurrentValue , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  176. <Style.Triggers>
  177. <DataTrigger Binding="{Binding Unit}" Value="h:m:s">
  178. <Setter Property="Text" Value="{Binding CurrentValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged,Converter={StaticResource SecondsToHourMinConverter}}"/>
  179. </DataTrigger>
  180. </Style.Triggers>
  181. </Style>
  182. </TextBlock.Style>
  183. </TextBlock>
  184. </DataTemplate>
  185. </GridViewColumn.CellTemplate>
  186. <GridViewColumn.Header>
  187. <TextBlock Text="Current Value" />
  188. </GridViewColumn.Header>
  189. </GridViewColumn>
  190. <GridViewColumn Width="200">
  191. <GridViewColumn.CellTemplate>
  192. <DataTemplate>
  193. <StackPanel>
  194. <TextBlock Width="132" Margin="4" HorizontalAlignment="Center" TextBlock.TextAlignment="Center" >
  195. <TextBlock.Style>
  196. <Style TargetType="TextBlock">
  197. <Setter Property="Text" Value="{Binding StartValue , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  198. <Style.Triggers>
  199. <DataTrigger Binding="{Binding Unit}" Value="h:m:s">
  200. <Setter Property="Text" Value="{Binding StartValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged,Converter={StaticResource SecondsToHourMinConverter}}"/>
  201. </DataTrigger>
  202. </Style.Triggers>
  203. </Style>
  204. </TextBlock.Style>
  205. </TextBlock>
  206. </StackPanel>
  207. </DataTemplate>
  208. </GridViewColumn.CellTemplate>
  209. <GridViewColumn.Header>
  210. <TextBlock
  211. Grid.Row="0"
  212. Grid.ColumnSpan="2"
  213. Text="Scheduling Start Value" />
  214. </GridViewColumn.Header>
  215. </GridViewColumn>
  216. <GridViewColumn Width="200">
  217. <GridViewColumn.CellTemplate>
  218. <DataTemplate>
  219. <StackPanel>
  220. <TextBlock Width="132" Margin="4" HorizontalAlignment="Center" TextBlock.TextAlignment="Center" >
  221. <TextBlock.Style>
  222. <Style TargetType="TextBlock">
  223. <Setter Property="Text" Value="{Binding LimitValue , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  224. <Style.Triggers>
  225. <DataTrigger Binding="{Binding Unit}" Value="h:m:s">
  226. <Setter Property="Text" Value="{Binding LimitValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged,Converter={StaticResource SecondsToHourMinConverter}}"/>
  227. </DataTrigger>
  228. </Style.Triggers>
  229. </Style>
  230. </TextBlock.Style>
  231. </TextBlock>
  232. </StackPanel>
  233. </DataTemplate>
  234. </GridViewColumn.CellTemplate>
  235. <GridViewColumn.Header>
  236. <TextBlock
  237. Grid.Row="0"
  238. Grid.ColumnSpan="2"
  239. Text="Scheduling Limit Value" />
  240. </GridViewColumn.Header>
  241. </GridViewColumn>
  242. <GridViewColumn Width="100">
  243. <GridViewColumn.CellTemplate>
  244. <DataTemplate>
  245. <TextBlock
  246. Width="140"
  247. HorizontalAlignment="Center"
  248. Text="{Binding Unit, Mode=TwoWay}"
  249. TextBlock.TextAlignment="Center" />
  250. </DataTemplate>
  251. </GridViewColumn.CellTemplate>
  252. <GridViewColumn.Header>
  253. <TextBlock Text="Unit" />
  254. </GridViewColumn.Header>
  255. </GridViewColumn>
  256. <GridViewColumn Width="140">
  257. <GridViewColumn.CellTemplate>
  258. <DataTemplate>
  259. <TextBlock
  260. Width="140"
  261. HorizontalAlignment="Center"
  262. Text="{Binding MaintenanceProcessing, Mode=TwoWay}"
  263. TextBlock.TextAlignment="Center" />
  264. </DataTemplate>
  265. </GridViewColumn.CellTemplate>
  266. <GridViewColumn.Header>
  267. <TextBlock Text="Maintenance Processing" />
  268. </GridViewColumn.Header>
  269. </GridViewColumn>
  270. </GridView.Columns>
  271. </GridView>
  272. </ListView.View>
  273. </ListView>
  274. </Grid>
  275. </UserControl>