RecipeConditionCheckSetView.xaml 80 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054
  1. <UserControl x:Class="FurnaceUI.Views.Editors.RecipeConditionCheckSetView"
  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:FurnaceUI.Views.Editors" xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:cal="http://www.caliburn.org"
  7. mc:Ignorable="d"
  8. Height="650" Width="1000">
  9. <Grid>
  10. <Grid.ColumnDefinitions>
  11. <ColumnDefinition Width="*"/>
  12. <ColumnDefinition Width="2.5*"/>
  13. </Grid.ColumnDefinitions>
  14. <Grid Grid.Row="0" Grid.Column="0" Height="550">
  15. <Grid.RowDefinitions>
  16. <RowDefinition Height="*"/>
  17. <RowDefinition Height="*"/>
  18. <RowDefinition Height="*"/>
  19. <RowDefinition Height="*"/>
  20. <RowDefinition Height="*"/>
  21. <RowDefinition Height="*"/>
  22. <RowDefinition Height="*"/>
  23. <RowDefinition Height="*"/>
  24. <RowDefinition Height="*"/>
  25. </Grid.RowDefinitions>
  26. <Border Grid.Row="0" Grid.Column="0" Margin="12">
  27. <RadioButton x:Name="rdExternalSensor" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For External In Sensor">
  28. <i:Interaction.Triggers>
  29. <i:EventTrigger EventName="Checked">
  30. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  31. <cal:Parameter Value="externalsensor"/>
  32. </cal:ActionMessage>
  33. </i:EventTrigger>
  34. </i:Interaction.Triggers>
  35. </RadioButton>
  36. </Border>
  37. <Border Grid.Row="1" Grid.Column="0" Margin="12">
  38. <RadioButton x:Name="rdTempStabilize" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Temp Stabilize">
  39. <i:Interaction.Triggers>
  40. <i:EventTrigger EventName="Checked">
  41. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  42. <cal:Parameter Value="tempstabilize"/>
  43. </cal:ActionMessage>
  44. </i:EventTrigger>
  45. </i:Interaction.Triggers>
  46. </RadioButton>
  47. </Border>
  48. <Border Grid.Row="2" Grid.Column="0" Margin="12">
  49. <RadioButton x:Name="rdFinishAutoProfile" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Finish Auto Profile">
  50. <i:Interaction.Triggers>
  51. <i:EventTrigger EventName="Checked">
  52. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  53. <cal:Parameter Value="finishautoprofile"/>
  54. </cal:ActionMessage>
  55. </i:EventTrigger>
  56. </i:Interaction.Triggers>
  57. </RadioButton>
  58. </Border>
  59. <Border Grid.Row="3" Grid.Column="0" Margin="12">
  60. <RadioButton x:Name="rdReachTemp" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Reach Temp">
  61. <i:Interaction.Triggers>
  62. <i:EventTrigger EventName="Checked">
  63. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  64. <cal:Parameter Value="reachtemp"/>
  65. </cal:ActionMessage>
  66. </i:EventTrigger>
  67. </i:Interaction.Triggers>
  68. </RadioButton>
  69. </Border>
  70. <Border Grid.Row="4" Grid.Column="0" Margin="12">
  71. <RadioButton x:Name="rdReachPressure" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Reach Pressure">
  72. <i:Interaction.Triggers>
  73. <i:EventTrigger EventName="Checked">
  74. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  75. <cal:Parameter Value="reachpressure"/>
  76. </cal:ActionMessage>
  77. </i:EventTrigger>
  78. </i:Interaction.Triggers>
  79. </RadioButton>
  80. </Border>
  81. <Border Grid.Row="5" Grid.Column="0" Margin="12">
  82. <RadioButton x:Name="rdPressureStabilize" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Pressure Stabilize">
  83. <i:Interaction.Triggers>
  84. <i:EventTrigger EventName="Checked">
  85. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  86. <cal:Parameter Value="pressurestabilize"/>
  87. </cal:ActionMessage>
  88. </i:EventTrigger>
  89. </i:Interaction.Triggers>
  90. </RadioButton>
  91. </Border>
  92. <Border Grid.Row="6" Grid.Column="0" Margin="12">
  93. <RadioButton x:Name="rdO2Density" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Reach O2 Density">
  94. <i:Interaction.Triggers>
  95. <i:EventTrigger EventName="Checked">
  96. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  97. <cal:Parameter Value="O2Density"/>
  98. </cal:ActionMessage>
  99. </i:EventTrigger>
  100. </i:Interaction.Triggers>
  101. </RadioButton>
  102. </Border>
  103. <Border Grid.Row="7" Grid.Column="0" Margin="12">
  104. <RadioButton x:Name="rdProcessTimeToEnd" Width="260" FontSize="20" GroupName="ConditionCommand" Content="Wait For Process Time To END" IsChecked="{Binding IsProcessTimeToENDCheck}">
  105. <i:Interaction.Triggers>
  106. <i:EventTrigger EventName="Checked">
  107. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  108. <cal:Parameter Value="processTimeToEnd"/>
  109. </cal:ActionMessage>
  110. </i:EventTrigger>
  111. </i:Interaction.Triggers>
  112. </RadioButton>
  113. </Border>
  114. <Border Grid.Row="8" Grid.Column="0" Margin="12">
  115. <RadioButton x:Name="rdNone" Width="260" FontSize="20" GroupName="ConditionCommand" Content="None">
  116. <i:Interaction.Triggers>
  117. <i:EventTrigger EventName="Checked">
  118. <cal:ActionMessage MethodName="RecipeConditionCheckCommand">
  119. <cal:Parameter Value="none"/>
  120. </cal:ActionMessage>
  121. </i:EventTrigger>
  122. </i:Interaction.Triggers>
  123. </RadioButton>
  124. </Border>
  125. </Grid>
  126. <Border Grid.Row="0" Grid.Column="1" >
  127. <DockPanel>
  128. <Canvas>
  129. <Canvas x:Name="ExternalInSensor" Visibility="Hidden" IsEnabled="{Binding IsEnable}" >
  130. <TextBlock Text="External In Sensor" FontWeight="Bold" FontSize="30" Canvas.Left="60" Margin="-15,40,0,0"/>
  131. <Grid x:Name="gdExternalSensor" Height="400" Width="600" Canvas.Left="80" Canvas.Top="100">
  132. <Grid.RowDefinitions>
  133. <RowDefinition Height="*"/>
  134. <RowDefinition Height="*"/>
  135. <RowDefinition Height="*"/>
  136. <RowDefinition Height="*"/>
  137. <RowDefinition Height="*"/>
  138. <RowDefinition Height="*"/>
  139. <RowDefinition Height="*"/>
  140. </Grid.RowDefinitions>
  141. <Grid.ColumnDefinitions>
  142. <ColumnDefinition Width="*"/>
  143. <ColumnDefinition Width="*"/>
  144. <ColumnDefinition Width="*"/>
  145. <ColumnDefinition Width="*"/>
  146. </Grid.ColumnDefinitions>
  147. <TextBlock Grid.Row="0" Grid.Column="0" Text="{Binding SensorExternalIn1}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  148. <RadioButton x:Name="rdExternalOn1" Grid.Row="0" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor1">
  149. <i:Interaction.Triggers>
  150. <i:EventTrigger EventName="Click">
  151. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  152. <cal:Parameter Value="$source"/>
  153. <cal:Parameter Value="ExternalSensor"/>
  154. <cal:Parameter Value="0"/>
  155. <cal:Parameter Value=""/>
  156. </cal:ActionMessage>
  157. </i:EventTrigger>
  158. </i:Interaction.Triggers>
  159. </RadioButton>
  160. <RadioButton x:Name="rdExternalOff1" Grid.Row="0" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor1">
  161. <i:Interaction.Triggers>
  162. <i:EventTrigger EventName="Click">
  163. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  164. <cal:Parameter Value="$source"/>
  165. <cal:Parameter Value="ExternalSensor"/>
  166. <cal:Parameter Value="0"/>
  167. <cal:Parameter Value=""/>
  168. </cal:ActionMessage>
  169. </i:EventTrigger>
  170. </i:Interaction.Triggers>
  171. </RadioButton>
  172. <RadioButton x:Name="rdExternalNone1" Grid.Row="0" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor1">
  173. <i:Interaction.Triggers>
  174. <i:EventTrigger EventName="Click">
  175. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  176. <cal:Parameter Value="$source"/>
  177. <cal:Parameter Value="ExternalSensor"/>
  178. <cal:Parameter Value="0"/>
  179. <cal:Parameter Value=""/>
  180. </cal:ActionMessage>
  181. </i:EventTrigger>
  182. </i:Interaction.Triggers>
  183. </RadioButton>
  184. <TextBlock Grid.Row="1" Grid.Column="0" Text="{Binding SensorExternalIn2}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  185. <RadioButton x:Name="rdExternalOn2" Grid.Row="1" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor2">
  186. <i:Interaction.Triggers>
  187. <i:EventTrigger EventName="Click">
  188. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  189. <cal:Parameter Value="$source"/>
  190. <cal:Parameter Value="ExternalSensor"/>
  191. <cal:Parameter Value="1"/>
  192. <cal:Parameter Value=""/>
  193. </cal:ActionMessage>
  194. </i:EventTrigger>
  195. </i:Interaction.Triggers>
  196. </RadioButton>
  197. <RadioButton x:Name="rdExternalOff2" Grid.Row="1" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor2">
  198. <i:Interaction.Triggers>
  199. <i:EventTrigger EventName="Click">
  200. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  201. <cal:Parameter Value="$source"/>
  202. <cal:Parameter Value="ExternalSensor"/>
  203. <cal:Parameter Value="1"/>
  204. <cal:Parameter Value=""/>
  205. </cal:ActionMessage>
  206. </i:EventTrigger>
  207. </i:Interaction.Triggers>
  208. </RadioButton>
  209. <RadioButton x:Name="rdExternalNone2" Grid.Row="1" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor2">
  210. <i:Interaction.Triggers>
  211. <i:EventTrigger EventName="Click">
  212. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  213. <cal:Parameter Value="$source"/>
  214. <cal:Parameter Value="ExternalSensor"/>
  215. <cal:Parameter Value="1"/>
  216. <cal:Parameter Value=""/>
  217. </cal:ActionMessage>
  218. </i:EventTrigger>
  219. </i:Interaction.Triggers>
  220. </RadioButton>
  221. <TextBlock Grid.Row="2" Grid.Column="0" Text="{Binding SensorExternalIn3}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  222. <RadioButton x:Name="rdExternalOn3" Grid.Row="2" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor3">
  223. <i:Interaction.Triggers>
  224. <i:EventTrigger EventName="Click">
  225. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  226. <cal:Parameter Value="$source"/>
  227. <cal:Parameter Value="ExternalSensor"/>
  228. <cal:Parameter Value="2"/>
  229. <cal:Parameter Value=""/>
  230. </cal:ActionMessage>
  231. </i:EventTrigger>
  232. </i:Interaction.Triggers>
  233. </RadioButton>
  234. <RadioButton x:Name="rdExternalOff3" Grid.Row="2" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor3">
  235. <i:Interaction.Triggers>
  236. <i:EventTrigger EventName="Click">
  237. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  238. <cal:Parameter Value="$source"/>
  239. <cal:Parameter Value="ExternalSensor"/>
  240. <cal:Parameter Value="2"/>
  241. <cal:Parameter Value=""/>
  242. </cal:ActionMessage>
  243. </i:EventTrigger>
  244. </i:Interaction.Triggers>
  245. </RadioButton>
  246. <RadioButton x:Name="rdExternalNone3" Grid.Row="2" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor3">
  247. <i:Interaction.Triggers>
  248. <i:EventTrigger EventName="Click">
  249. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  250. <cal:Parameter Value="$source"/>
  251. <cal:Parameter Value="ExternalSensor"/>
  252. <cal:Parameter Value="2"/>
  253. <cal:Parameter Value=""/>
  254. </cal:ActionMessage>
  255. </i:EventTrigger>
  256. </i:Interaction.Triggers>
  257. </RadioButton>
  258. <TextBlock Grid.Row="3" Grid.Column="0" Text="{Binding SensorExternalIn4}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  259. <RadioButton x:Name="rdExternalOn4" Grid.Row="3" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor4">
  260. <i:Interaction.Triggers>
  261. <i:EventTrigger EventName="Click">
  262. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  263. <cal:Parameter Value="$source"/>
  264. <cal:Parameter Value="ExternalSensor"/>
  265. <cal:Parameter Value="3"/>
  266. <cal:Parameter Value=""/>
  267. </cal:ActionMessage>
  268. </i:EventTrigger>
  269. </i:Interaction.Triggers>
  270. </RadioButton>
  271. <RadioButton x:Name="rdExternalOff4" Grid.Row="3" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor4">
  272. <i:Interaction.Triggers>
  273. <i:EventTrigger EventName="Click">
  274. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  275. <cal:Parameter Value="$source"/>
  276. <cal:Parameter Value="ExternalSensor"/>
  277. <cal:Parameter Value="3"/>
  278. <cal:Parameter Value=""/>
  279. </cal:ActionMessage>
  280. </i:EventTrigger>
  281. </i:Interaction.Triggers>
  282. </RadioButton>
  283. <RadioButton x:Name="rdExternalNone4" Grid.Row="3" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor4">
  284. <i:Interaction.Triggers>
  285. <i:EventTrigger EventName="Click">
  286. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  287. <cal:Parameter Value="$source"/>
  288. <cal:Parameter Value="ExternalSensor"/>
  289. <cal:Parameter Value="3"/>
  290. <cal:Parameter Value=""/>
  291. </cal:ActionMessage>
  292. </i:EventTrigger>
  293. </i:Interaction.Triggers>
  294. </RadioButton>
  295. <TextBlock Grid.Row="4" Grid.Column="0" Text="{Binding SensorExternalIn5}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  296. <RadioButton x:Name="rdExternalOn5" Grid.Row="4" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor5">
  297. <i:Interaction.Triggers>
  298. <i:EventTrigger EventName="Click">
  299. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  300. <cal:Parameter Value="$source"/>
  301. <cal:Parameter Value="ExternalSensor"/>
  302. <cal:Parameter Value="4"/>
  303. <cal:Parameter Value=""/>
  304. </cal:ActionMessage>
  305. </i:EventTrigger>
  306. </i:Interaction.Triggers>
  307. </RadioButton>
  308. <RadioButton x:Name="rdExternalOff5" Grid.Row="4" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor5">
  309. <i:Interaction.Triggers>
  310. <i:EventTrigger EventName="Click">
  311. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  312. <cal:Parameter Value="$source"/>
  313. <cal:Parameter Value="ExternalSensor"/>
  314. <cal:Parameter Value="4"/>
  315. <cal:Parameter Value=""/>
  316. </cal:ActionMessage>
  317. </i:EventTrigger>
  318. </i:Interaction.Triggers>
  319. </RadioButton>
  320. <RadioButton x:Name="rdExternalNone5" Grid.Row="4" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor5">
  321. <i:Interaction.Triggers>
  322. <i:EventTrigger EventName="Click">
  323. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  324. <cal:Parameter Value="$source"/>
  325. <cal:Parameter Value="ExternalSensor"/>
  326. <cal:Parameter Value="4"/>
  327. <cal:Parameter Value=""/>
  328. </cal:ActionMessage>
  329. </i:EventTrigger>
  330. </i:Interaction.Triggers>
  331. </RadioButton>
  332. <TextBlock Grid.Row="5" Grid.Column="0" Text="{Binding SensorExternalIn6}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  333. <RadioButton x:Name="rdExternalOn6" Grid.Row="5" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor6">
  334. <i:Interaction.Triggers>
  335. <i:EventTrigger EventName="Click">
  336. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  337. <cal:Parameter Value="$source"/>
  338. <cal:Parameter Value="ExternalSensor"/>
  339. <cal:Parameter Value="5"/>
  340. <cal:Parameter Value=""/>
  341. </cal:ActionMessage>
  342. </i:EventTrigger>
  343. </i:Interaction.Triggers>
  344. </RadioButton>
  345. <RadioButton x:Name="rdExternalOff6" Grid.Row="5" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor6">
  346. <i:Interaction.Triggers>
  347. <i:EventTrigger EventName="Click">
  348. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  349. <cal:Parameter Value="$source"/>
  350. <cal:Parameter Value="ExternalSensor"/>
  351. <cal:Parameter Value="5"/>
  352. <cal:Parameter Value=""/>
  353. </cal:ActionMessage>
  354. </i:EventTrigger>
  355. </i:Interaction.Triggers>
  356. </RadioButton>
  357. <RadioButton x:Name="rdExternalNone6" Grid.Row="5" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor6">
  358. <i:Interaction.Triggers>
  359. <i:EventTrigger EventName="Click">
  360. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  361. <cal:Parameter Value="$source"/>
  362. <cal:Parameter Value="ExternalSensor"/>
  363. <cal:Parameter Value="5"/>
  364. <cal:Parameter Value=""/>
  365. </cal:ActionMessage>
  366. </i:EventTrigger>
  367. </i:Interaction.Triggers>
  368. </RadioButton>
  369. <TextBlock Grid.Row="6" Grid.Column="0" Text="{Binding SensorExternalIn7}" FontSize="20" Margin="-40,10,0,10" VerticalAlignment="Center" HorizontalAlignment="Right"/>
  370. <RadioButton x:Name="rdExternalOn7" Grid.Row="6" Grid.Column="1" Content="On" Margin="10,10" FontSize="20" GroupName="externalsensor7">
  371. <i:Interaction.Triggers>
  372. <i:EventTrigger EventName="Click">
  373. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  374. <cal:Parameter Value="$source"/>
  375. <cal:Parameter Value="ExternalSensor"/>
  376. <cal:Parameter Value="6"/>
  377. <cal:Parameter Value=""/>
  378. </cal:ActionMessage>
  379. </i:EventTrigger>
  380. </i:Interaction.Triggers>
  381. </RadioButton>
  382. <RadioButton x:Name="rdExternalOff7" Grid.Row="6" Grid.Column="2" Content="Off" Margin="10,10" FontSize="20" GroupName="externalsensor7">
  383. <i:Interaction.Triggers>
  384. <i:EventTrigger EventName="Click">
  385. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  386. <cal:Parameter Value="$source"/>
  387. <cal:Parameter Value="ExternalSensor"/>
  388. <cal:Parameter Value="6"/>
  389. <cal:Parameter Value=""/>
  390. </cal:ActionMessage>
  391. </i:EventTrigger>
  392. </i:Interaction.Triggers>
  393. </RadioButton>
  394. <RadioButton x:Name="rdExternalNone7" Grid.Row="6" Grid.Column="3" Content="None" Margin="10,10" FontSize="20" GroupName="externalsensor7">
  395. <i:Interaction.Triggers>
  396. <i:EventTrigger EventName="Click">
  397. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  398. <cal:Parameter Value="$source"/>
  399. <cal:Parameter Value="ExternalSensor"/>
  400. <cal:Parameter Value="6"/>
  401. <cal:Parameter Value=""/>
  402. </cal:ActionMessage>
  403. </i:EventTrigger>
  404. </i:Interaction.Triggers>
  405. </RadioButton>
  406. </Grid>
  407. </Canvas>
  408. <!--<Canvas x:Name="ExternalInOff" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  409. <TextBlock Text="External In Off" FontWeight="Bold" FontSize="30" Canvas.Left="60"/>
  410. <Grid Height="400" Width="400" Canvas.Left="80" Canvas.Top="100">
  411. <Grid.RowDefinitions>
  412. <RowDefinition Height="*"/>
  413. <RowDefinition Height="*"/>
  414. <RowDefinition Height="*"/>
  415. <RowDefinition Height="*"/>
  416. <RowDefinition Height="*"/>
  417. <RowDefinition Height="*"/>
  418. </Grid.RowDefinitions>
  419. <Grid.ColumnDefinitions>
  420. <ColumnDefinition Width="*"/>
  421. <ColumnDefinition Width="2*"/>
  422. </Grid.ColumnDefinitions>
  423. <TextBlock Grid.Row="0" Grid.Column="0" Text="External1" FontSize="20"/>
  424. <CheckBox x:Name="chkExternalInOff1" IsChecked="{Binding RecipeConditions.ExternalOff[0]}" Grid.Row="0" Grid.Column="1" Content="Off" >
  425. <CheckBox.LayoutTransform>
  426. <ScaleTransform ScaleX="2" ScaleY="2" />
  427. </CheckBox.LayoutTransform>
  428. </CheckBox>
  429. <TextBlock Grid.Row="1" Grid.Column="0" Text="External2" FontSize="20"/>
  430. <CheckBox x:Name="chkExternalInOff2" IsChecked="{Binding RecipeConditions.ExternalOff[1]}" Grid.Row="1" Grid.Column="1" Content="Off" >
  431. <CheckBox.LayoutTransform>
  432. <ScaleTransform ScaleX="2" ScaleY="2" />
  433. </CheckBox.LayoutTransform>
  434. </CheckBox>
  435. <TextBlock Grid.Row="2" Grid.Column="0" Text="External3" FontSize="20"/>
  436. <CheckBox x:Name="chkExternalInOff3" IsChecked="{Binding RecipeConditions.ExternalOff[2]}" Grid.Row="2" Grid.Column="1" Content="Off" >
  437. <CheckBox.LayoutTransform>
  438. <ScaleTransform ScaleX="2" ScaleY="2" />
  439. </CheckBox.LayoutTransform>
  440. </CheckBox>
  441. <TextBlock Grid.Row="3" Grid.Column="0" Text="External4" FontSize="20"/>
  442. <CheckBox x:Name="chkExternalInOff4" IsChecked="{Binding RecipeConditions.ExternalOff[3]}" Grid.Row="3" Grid.Column="1" Content="Off" >
  443. <CheckBox.LayoutTransform>
  444. <ScaleTransform ScaleX="2" ScaleY="2" />
  445. </CheckBox.LayoutTransform>
  446. </CheckBox>
  447. <TextBlock Grid.Row="4" Grid.Column="0" Text="External5" FontSize="20"/>
  448. <CheckBox x:Name="chkExternalInOff5" IsChecked="{Binding RecipeConditions.ExternalOff[4]}" Grid.Row="4" Grid.Column="1" Content="Off" >
  449. <CheckBox.LayoutTransform>
  450. <ScaleTransform ScaleX="2" ScaleY="2" />
  451. </CheckBox.LayoutTransform>
  452. </CheckBox>
  453. <TextBlock Grid.Row="5" Grid.Column="0" Text="External6" FontSize="20"/>
  454. <CheckBox x:Name="chkExternalInOff6" IsChecked="{Binding RecipeConditions.ExternalOff[5]}" Grid.Row="5" Grid.Column="1" Content="Off" >
  455. <CheckBox.LayoutTransform>
  456. <ScaleTransform ScaleX="2" ScaleY="2" />
  457. </CheckBox.LayoutTransform>
  458. </CheckBox>
  459. </Grid>
  460. </Canvas>-->
  461. <Canvas x:Name="TempStabilize" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  462. <Grid Height="600" Width="700">
  463. <Grid.RowDefinitions>
  464. <RowDefinition Height="100"/>
  465. <RowDefinition Height="*"/>
  466. <RowDefinition Height="60"/>
  467. </Grid.RowDefinitions>
  468. <Grid.ColumnDefinitions>
  469. <ColumnDefinition Width="120"/>
  470. <ColumnDefinition Width="*"/>
  471. </Grid.ColumnDefinitions>
  472. <StackPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2">
  473. <Grid >
  474. <Grid.ColumnDefinitions>
  475. <ColumnDefinition Width="1.4*"/>
  476. <ColumnDefinition Width="*"/>
  477. </Grid.ColumnDefinitions>
  478. <TextBlock Grid.Row="0" Grid.Column="0" Text="Temp Stabilize Table" FontSize="30" FontWeight="Bold" Margin="40,40,0,0"/>
  479. <Border Grid.Row="0" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Left" BorderThickness="2,2,1,1" BorderBrush="Gray" Margin="-5,30,0,10">
  480. <WrapPanel x:Name="WPlTempStabilize" SnapsToDevicePixels="True" Height="42" Width="360" >
  481. <RadioButton Content="None" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  482. <i:Interaction.Triggers>
  483. <i:EventTrigger EventName="Click">
  484. <cal:ActionMessage MethodName="TempStabilizeSelected">
  485. <cal:Parameter Value="$source"/>
  486. </cal:ActionMessage>
  487. </i:EventTrigger>
  488. </i:Interaction.Triggers>
  489. </RadioButton>
  490. <RadioButton Content="1" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  491. <i:Interaction.Triggers>
  492. <i:EventTrigger EventName="Click">
  493. <cal:ActionMessage MethodName="TempStabilizeSelected">
  494. <cal:Parameter Value="$source"/>
  495. </cal:ActionMessage>
  496. </i:EventTrigger>
  497. </i:Interaction.Triggers>
  498. </RadioButton>
  499. <RadioButton Content="2" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  500. <i:Interaction.Triggers>
  501. <i:EventTrigger EventName="Click">
  502. <cal:ActionMessage MethodName="TempStabilizeSelected">
  503. <cal:Parameter Value="$source"/>
  504. </cal:ActionMessage>
  505. </i:EventTrigger>
  506. </i:Interaction.Triggers>
  507. </RadioButton>
  508. <RadioButton Content="3" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  509. <i:Interaction.Triggers>
  510. <i:EventTrigger EventName="Click">
  511. <cal:ActionMessage MethodName="TempStabilizeSelected">
  512. <cal:Parameter Value="$source"/>
  513. </cal:ActionMessage>
  514. </i:EventTrigger>
  515. </i:Interaction.Triggers>
  516. </RadioButton>
  517. <RadioButton Content="4" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  518. <i:Interaction.Triggers>
  519. <i:EventTrigger EventName="Click">
  520. <cal:ActionMessage MethodName="TempStabilizeSelected">
  521. <cal:Parameter Value="$source"/>
  522. </cal:ActionMessage>
  523. </i:EventTrigger>
  524. </i:Interaction.Triggers>
  525. </RadioButton>
  526. <RadioButton Content="5" GroupName="TempStabilize" Margin="4,4,0,0" FontSize="30">
  527. <i:Interaction.Triggers>
  528. <i:EventTrigger EventName="Click">
  529. <cal:ActionMessage MethodName="TempStabilizeSelected">
  530. <cal:Parameter Value="$source"/>
  531. </cal:ActionMessage>
  532. </i:EventTrigger>
  533. </i:Interaction.Triggers>
  534. </RadioButton>
  535. </WrapPanel>
  536. </Border>
  537. </Grid>
  538. </StackPanel>
  539. <StackPanel Grid.Row="1" Grid.Column="0">
  540. <RadioButton Width="90" Content="{Binding TempDisplayName[0]}" Margin="10">
  541. <i:Interaction.Triggers>
  542. <i:EventTrigger EventName="Click">
  543. <cal:ActionMessage MethodName="TempStabilizeTypeSelected">
  544. <cal:Parameter Value="$source"/>
  545. <cal:Parameter Value="0"/>
  546. </cal:ActionMessage>
  547. </i:EventTrigger>
  548. </i:Interaction.Triggers>
  549. </RadioButton>
  550. <RadioButton Width="90" Content="{Binding TempDisplayName[1]}" Margin="10" >
  551. <i:Interaction.Triggers>
  552. <i:EventTrigger EventName="Click">
  553. <cal:ActionMessage MethodName="TempStabilizeTypeSelected">
  554. <cal:Parameter Value="$source"/>
  555. <cal:Parameter Value="1"/>
  556. </cal:ActionMessage>
  557. </i:EventTrigger>
  558. </i:Interaction.Triggers>
  559. </RadioButton>
  560. <RadioButton Width="90" Content="{Binding TempDisplayName[2]}" Margin="10">
  561. <i:Interaction.Triggers>
  562. <i:EventTrigger EventName="Click">
  563. <cal:ActionMessage MethodName="TempStabilizeTypeSelected">
  564. <cal:Parameter Value="$source"/>
  565. <cal:Parameter Value="2"/>
  566. </cal:ActionMessage>
  567. </i:EventTrigger>
  568. </i:Interaction.Triggers>
  569. </RadioButton>
  570. <RadioButton Width="90" Content="{Binding TempDisplayName[3]}" Margin="10">
  571. <i:Interaction.Triggers>
  572. <i:EventTrigger EventName="Click">
  573. <cal:ActionMessage MethodName="TempStabilizeTypeSelected">
  574. <cal:Parameter Value="$source"/>
  575. <cal:Parameter Value="3"/>
  576. </cal:ActionMessage>
  577. </i:EventTrigger>
  578. </i:Interaction.Triggers>
  579. </RadioButton>
  580. <RadioButton Width="90" Content="{Binding TempDisplayName[4]}" Margin="10">
  581. <i:Interaction.Triggers>
  582. <i:EventTrigger EventName="Click">
  583. <cal:ActionMessage MethodName="TempStabilizeTypeSelected">
  584. <cal:Parameter Value="$source"/>
  585. <cal:Parameter Value="4"/>
  586. </cal:ActionMessage>
  587. </i:EventTrigger>
  588. </i:Interaction.Triggers>
  589. </RadioButton>
  590. </StackPanel>
  591. <Canvas Grid.Row="1" Grid.Column="1" IsEnabled="{Binding IsEnable}">
  592. <DockPanel >
  593. <Image Source="/FurnaceUI;component/Resources/Images/Temp/TempStabilize.png" Height="460" Width="584"/>
  594. </DockPanel>
  595. <TextBox Width="52" Text="{Binding TempMax}" Tag="None" Canvas.Left="392" Canvas.Top="155" IsEnabled="False"/>
  596. <TextBox Width="52" Text="{Binding TempMin}" Tag="None" Canvas.Left="392" Canvas.Top="215" IsEnabled="False"/>
  597. <TextBox Width="52" Text="{Binding TempJudgTentTime}" Tag="None" Canvas.Left="230" Canvas.Top="282" IsEnabled="False"/>
  598. <TextBlock Text="Stabilize Temperature(℃)" TextWrapping="WrapWithOverflow" Width="120" FontSize="14" Canvas.Left="463" Canvas.Top="150"/>
  599. <TextBlock Text="Stabilize Temperature(℃)" TextWrapping="WrapWithOverflow" Width="120" FontSize="14" Canvas.Left="463" Canvas.Top="215"/>
  600. <TextBlock Text="Judgment Time(sec)" Width="125" FontSize="14" Canvas.Left="193" Canvas.Top="309"/>
  601. </Canvas>
  602. </Grid>
  603. </Canvas>
  604. <Canvas x:Name="FinishAutoProfile" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  605. <Grid x:Name="gdFinishAutoProfile" Height="337" Width="688" Margin="10,20,10,10">
  606. <Grid.RowDefinitions>
  607. <RowDefinition Height="*"/>
  608. <RowDefinition Height="*"/>
  609. <RowDefinition Height="*"/>
  610. <RowDefinition Height="*"/>
  611. </Grid.RowDefinitions>
  612. <Grid.ColumnDefinitions>
  613. <ColumnDefinition Width="*"/>
  614. <ColumnDefinition Width="2*"/>
  615. </Grid.ColumnDefinitions>
  616. <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Text="Finish Auto Profile" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" FontWeight="Bold" Margin="35,-10,0,0"/>
  617. <RadioButton Grid.Row="1" Grid.Column="0" Content="None" GroupName="FinishAutoProfile" FontSize="20" Width="180" Height="48" HorizontalAlignment="Right" Margin="0,10">
  618. <i:Interaction.Triggers>
  619. <i:EventTrigger EventName="Click">
  620. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  621. <cal:Parameter Value="$source"/>
  622. <cal:Parameter Value="FinishAutoProfile"/>
  623. <cal:Parameter Value="0"/>
  624. <cal:Parameter Value=""/>
  625. </cal:ActionMessage>
  626. </i:EventTrigger>
  627. </i:Interaction.Triggers>
  628. </RadioButton>
  629. <RadioButton Grid.Row="1" Grid.Column="1" Content="Wait" GroupName="FinishAutoProfile" FontSize="20" Width="180" Height="48" HorizontalAlignment="Left" Margin="20,10">
  630. <i:Interaction.Triggers>
  631. <i:EventTrigger EventName="Click">
  632. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  633. <cal:Parameter Value="$source"/>
  634. <cal:Parameter Value="FinishAutoProfile"/>
  635. <cal:Parameter Value="0"/>
  636. <cal:Parameter Value=""/>
  637. </cal:ActionMessage>
  638. </i:EventTrigger>
  639. </i:Interaction.Triggers>
  640. </RadioButton>
  641. </Grid>
  642. </Canvas>
  643. <Canvas x:Name="ReachTemp" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  644. <Grid x:Name="gdReachTemp" Height="337" Width="680" Margin="10,20,10,10">
  645. <Grid.RowDefinitions>
  646. <RowDefinition Height="*"/>
  647. <RowDefinition Height="*"/>
  648. <RowDefinition Height="*"/>
  649. <RowDefinition Height="*"/>
  650. </Grid.RowDefinitions>
  651. <Grid.ColumnDefinitions>
  652. <ColumnDefinition Width="*"/>
  653. <ColumnDefinition Width="*"/>
  654. <ColumnDefinition Width="*"/>
  655. </Grid.ColumnDefinitions>
  656. <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Text="Temp Condition" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" FontWeight="Bold" Margin="35,-10,0,0"/>
  657. <RadioButton Grid.Row="1" Grid.Column="0" x:Name="tempNone" Content="None" GroupName="ReachTemp" FontSize="20" Width="160" Height="48" HorizontalAlignment="Right" Margin="0,10">
  658. <i:Interaction.Triggers>
  659. <i:EventTrigger EventName="Click">
  660. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  661. <cal:Parameter Value="$source"/>
  662. <cal:Parameter Value="Temp"/>
  663. <cal:Parameter Value="None"/>
  664. <cal:Parameter Value=""/>
  665. </cal:ActionMessage>
  666. </i:EventTrigger>
  667. </i:Interaction.Triggers>
  668. </RadioButton>
  669. <TextBlock Grid.Row="2" Grid.Column="0" Text="Temperature(℃)" FontSize="20" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="45,0,0,0"/>
  670. <RadioButton Grid.Row="1" Grid.Column="1" x:Name="tempMore" Content="Wait More Than" GroupName="ReachTemp" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="20,10">
  671. <i:Interaction.Triggers>
  672. <i:EventTrigger EventName="Click">
  673. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  674. <cal:Parameter Value="$source"/>
  675. <cal:Parameter Value="Temp"/>
  676. <cal:Parameter Value="WaitMoreThan"/>
  677. <cal:Parameter Value=""/>
  678. </cal:ActionMessage>
  679. </i:EventTrigger>
  680. </i:Interaction.Triggers>
  681. </RadioButton>
  682. <RadioButton Grid.Row="1" Grid.Column="2" x:Name="tempLess" Content="Wait Less Than" GroupName="ReachTemp" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="-20,10">
  683. <i:Interaction.Triggers>
  684. <i:EventTrigger EventName="Click">
  685. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  686. <cal:Parameter Value="$source"/>
  687. <cal:Parameter Value="Temp"/>
  688. <cal:Parameter Value="WaitLessThan"/>
  689. <cal:Parameter Value=""/>
  690. </cal:ActionMessage>
  691. </i:EventTrigger>
  692. </i:Interaction.Triggers>
  693. </RadioButton>
  694. <TextBox Text="{Binding ReachTempValue, UpdateSourceTrigger=PropertyChanged}" Tag="Number" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" Height="50" Width="350" HorizontalAlignment="Left" Margin="20,10,5,10" FontSize="20" IsEnabled="{Binding IsReachTempEnabled}"/>
  695. </Grid>
  696. </Canvas>
  697. <Canvas x:Name="ReachPressure" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  698. <Grid x:Name="gdReachPressure" Height="400" Width="680" Margin="10,20,10,10">
  699. <Grid.ColumnDefinitions>
  700. <ColumnDefinition Width="*"/>
  701. <ColumnDefinition Width="*"/>
  702. <ColumnDefinition Width="*"/>
  703. </Grid.ColumnDefinitions>
  704. <Grid.RowDefinitions>
  705. <RowDefinition Height="*"/>
  706. <RowDefinition Height="*"/>
  707. <RowDefinition Height="*"/>
  708. <RowDefinition Height="*"/>
  709. <RowDefinition Height="*"/>
  710. </Grid.RowDefinitions>
  711. <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Text="Pressure Condition" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" FontWeight="Bold" Margin="35,-10,0,0"/>
  712. <RadioButton Grid.Row="1" Grid.Column="0" x:Name="pressureNone" Content="None" GroupName="ReachPressure" FontSize="20" Width="160" Height="48" HorizontalAlignment="Right" Margin="0,10">
  713. <i:Interaction.Triggers>
  714. <i:EventTrigger EventName="Click">
  715. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  716. <cal:Parameter Value="$source"/>
  717. <cal:Parameter Value="Pressure"/>
  718. <cal:Parameter Value="None"/>
  719. <cal:Parameter Value=""/>
  720. </cal:ActionMessage>
  721. </i:EventTrigger>
  722. </i:Interaction.Triggers>
  723. </RadioButton>
  724. <TextBlock Grid.Row="4" Grid.Column="0" Text="{Binding PressureName}" FontSize="20" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="45,0,0,0"/>
  725. <RadioButton Grid.Row="1" Grid.Column="1" x:Name="pressureMore" Content="Wait More Than" GroupName="ReachPressure" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="20,10">
  726. <i:Interaction.Triggers>
  727. <i:EventTrigger EventName="Click">
  728. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  729. <cal:Parameter Value="$source"/>
  730. <cal:Parameter Value="Pressure"/>
  731. <cal:Parameter Value="WaitMoreThan"/>
  732. <cal:Parameter Value=""/>
  733. </cal:ActionMessage>
  734. </i:EventTrigger>
  735. </i:Interaction.Triggers>
  736. </RadioButton>
  737. <RadioButton Grid.Row="1" Grid.Column="2" x:Name="pressureLess" Content="Wait Less Than" GroupName="ReachPressure" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="-20,10">
  738. <i:Interaction.Triggers>
  739. <i:EventTrigger EventName="Click">
  740. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  741. <cal:Parameter Value="$source"/>
  742. <cal:Parameter Value="Pressure"/>
  743. <cal:Parameter Value="WaitLessThan"/>
  744. <cal:Parameter Value=""/>
  745. </cal:ActionMessage>
  746. </i:EventTrigger>
  747. </i:Interaction.Triggers>
  748. </RadioButton>
  749. <RadioButton Grid.Row="2" Grid.Column="1" x:Name="VG1" Content="VG1" GroupName="VG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="20,10" IsEnabled="{Binding IsReachVGEnabled}">
  750. <i:Interaction.Triggers>
  751. <i:EventTrigger EventName="Click">
  752. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  753. <cal:Parameter Value="$source"/>
  754. <cal:Parameter Value="Pressure"/>
  755. <cal:Parameter Value="{Binding RecipeConditions.ReachPressure}"/>
  756. <cal:Parameter Value="VG1"/>
  757. </cal:ActionMessage>
  758. </i:EventTrigger>
  759. </i:Interaction.Triggers>
  760. </RadioButton>
  761. <RadioButton Grid.Row="2" Grid.Column="2" x:Name="VG2" Content="VG2" GroupName="VG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="-20,10" IsEnabled="{Binding IsReachVGEnabled}">
  762. <i:Interaction.Triggers>
  763. <i:EventTrigger EventName="Click">
  764. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  765. <cal:Parameter Value="$source"/>
  766. <cal:Parameter Value="Pressure"/>
  767. <cal:Parameter Value="{Binding RecipeConditions.ReachPressure}"/>
  768. <cal:Parameter Value="VG2"/>
  769. </cal:ActionMessage>
  770. </i:EventTrigger>
  771. </i:Interaction.Triggers>
  772. </RadioButton>
  773. <RadioButton Grid.Row="3" Grid.Column="1" x:Name="VG3" Content="VG3" GroupName="VG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="20,10" IsEnabled="{Binding IsReachVGEnabled}">
  774. <i:Interaction.Triggers>
  775. <i:EventTrigger EventName="Click">
  776. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  777. <cal:Parameter Value="$source"/>
  778. <cal:Parameter Value="Pressure"/>
  779. <cal:Parameter Value="{Binding RecipeConditions.ReachPressure}"/>
  780. <cal:Parameter Value="VG3"/>
  781. </cal:ActionMessage>
  782. </i:EventTrigger>
  783. </i:Interaction.Triggers>
  784. </RadioButton>
  785. <TextBox Text="{Binding ReachPressureValue, UpdateSourceTrigger=PropertyChanged}" Tag="Number" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="2" Height="50" Width="350" Margin="20,10,5,10" FontSize="20" HorizontalAlignment="Left" IsEnabled="{Binding IsReachPressureEnabled}"/>
  786. </Grid>
  787. </Canvas>
  788. <Canvas x:Name="PressureStabilize" Visibility="Hidden" IsEnabled="{Binding IsEnable}" Margin="-30,0,0,0">
  789. <Grid Height="600" Width="798">
  790. <Grid.RowDefinitions>
  791. <RowDefinition Height="100"/>
  792. <RowDefinition Height="*"/>
  793. <RowDefinition Height="60"/>
  794. </Grid.RowDefinitions>
  795. <Grid.ColumnDefinitions>
  796. <ColumnDefinition Width="80"/>
  797. <ColumnDefinition Width="650"/>
  798. </Grid.ColumnDefinitions>
  799. <StackPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2">
  800. <Grid>
  801. <Grid.ColumnDefinitions>
  802. <ColumnDefinition Width="1.38*"/>
  803. <ColumnDefinition Width="*"/>
  804. </Grid.ColumnDefinitions>
  805. <TextBlock Grid.Row="0" Grid.Column="0" Text="Pressure Stabilize Table" FontSize="30" FontWeight="Bold" Margin="75,40,0,0"/>
  806. <Border Grid.Row="0" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Left" BorderThickness="2,2,1,1" BorderBrush="Gray" Margin="10,30,0,10">
  807. <WrapPanel x:Name="WPlPressureStabilize" SnapsToDevicePixels="True" Width="360" Height="42">
  808. <RadioButton Content="None" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  809. <i:Interaction.Triggers>
  810. <i:EventTrigger EventName="Click">
  811. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  812. <cal:Parameter Value="$source"/>
  813. </cal:ActionMessage>
  814. </i:EventTrigger>
  815. </i:Interaction.Triggers>
  816. </RadioButton>
  817. <RadioButton Content="1" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  818. <i:Interaction.Triggers>
  819. <i:EventTrigger EventName="Click">
  820. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  821. <cal:Parameter Value="$source"/>
  822. </cal:ActionMessage>
  823. </i:EventTrigger>
  824. </i:Interaction.Triggers>
  825. </RadioButton>
  826. <RadioButton Content="2" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  827. <i:Interaction.Triggers>
  828. <i:EventTrigger EventName="Click">
  829. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  830. <cal:Parameter Value="$source"/>
  831. </cal:ActionMessage>
  832. </i:EventTrigger>
  833. </i:Interaction.Triggers>
  834. </RadioButton>
  835. <RadioButton Content="3" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  836. <i:Interaction.Triggers>
  837. <i:EventTrigger EventName="Click">
  838. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  839. <cal:Parameter Value="$source"/>
  840. </cal:ActionMessage>
  841. </i:EventTrigger>
  842. </i:Interaction.Triggers>
  843. </RadioButton>
  844. <RadioButton Content="4" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  845. <i:Interaction.Triggers>
  846. <i:EventTrigger EventName="Click">
  847. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  848. <cal:Parameter Value="$source"/>
  849. </cal:ActionMessage>
  850. </i:EventTrigger>
  851. </i:Interaction.Triggers>
  852. </RadioButton>
  853. <RadioButton Content="5" GroupName="PressureStabilize" Margin="4,4,0,0" FontSize="30">
  854. <i:Interaction.Triggers>
  855. <i:EventTrigger EventName="Click">
  856. <cal:ActionMessage MethodName="PressureStabilizeSelected">
  857. <cal:Parameter Value="$source"/>
  858. </cal:ActionMessage>
  859. </i:EventTrigger>
  860. </i:Interaction.Triggers>
  861. </RadioButton>
  862. </WrapPanel>
  863. </Border>
  864. </Grid>
  865. </StackPanel>
  866. <Canvas Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" IsEnabled="{Binding IsEnable}">
  867. <TextBlock Text="Max Scale" FontSize="14" Canvas.Top="70" Canvas.Left="55"/>
  868. <TextBlock Text="{Binding PressureUnit}" FontSize="14" Canvas.Top="70" Canvas.Left="235"/>
  869. <TextBlock Text="Pres." FontSize="14" Canvas.Top="110" Canvas.Left="98"/>
  870. <Image Source="/FurnaceUI;component/Resources/Images/Temp/PressureStabilize.png" Height="458" Width="694"/>
  871. <TextBox Width="102" Text="{Binding PressureScaleMax}" Tag="None" Canvas.Left="126" Canvas.Top="64" Height="31" IsEnabled="False"/>
  872. <TextBox Width="55" Text="{Binding PressureMax}" Tag="None" Canvas.Left="592" Canvas.Top="221" Height="26" IsEnabled="False"/>
  873. <TextBox Width="55" Text="{Binding PressureMin}" Tag="None" Canvas.Left="592" Canvas.Top="283" Height="26" IsEnabled="False"/>
  874. <TextBox Width="87" Text="{Binding PressureDelayTime}" Tag="None" Canvas.Left="171" Canvas.Top="108" Height="31" IsEnabled="False"/>
  875. <TextBox Width="87" Text="{Binding PressureJudgTentTime}" Tag="None" Canvas.Left="372" Canvas.Top="108" Height="31" IsEnabled="False"/>
  876. <TextBlock Text="Delay Time" FontSize="14" Canvas.Top="148" Canvas.Left="175"/>
  877. <TextBlock Text="Judgment Time" FontSize="14" Canvas.Top="148" Canvas.Left="365"/>
  878. <TextBlock Text="Stability Range(%)" TextWrapping="WrapWithOverflow" Width="80" FontSize="14" Canvas.Top="215" Canvas.Left="655"/>
  879. <TextBlock Text="Stability Range(%)" TextWrapping="WrapWithOverflow" Width="80" FontSize="14" Canvas.Top="280" Canvas.Left="655"/>
  880. <TextBlock Text="+" FontSize="14" Canvas.Top="228" Canvas.Left="575"/>
  881. <TextBlock Text="-" FontSize="14" Canvas.Top="290" Canvas.Left="575"/>
  882. <TextBlock Text="Step Start" FontSize="14" Canvas.Top="360" Canvas.Left="150"/>
  883. <TextBlock Text="sec" Canvas.Left="258" Canvas.Top="135" FontSize="14"/>
  884. <TextBlock Text="sec" Canvas.Left="458" Canvas.Top="135" FontSize="14"/>
  885. <RadioButton x:Name="VG4" Content="VG1" GroupName="PressureVG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="220,0" IsEnabled="{Binding IsPressureStabilizeVGEnabled}">
  886. <i:Interaction.Triggers>
  887. <i:EventTrigger EventName="Click">
  888. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  889. <cal:Parameter Value="$source"/>
  890. <cal:Parameter Value="Pressure Stabilize"/>
  891. <cal:Parameter Value=""/>
  892. <cal:Parameter Value="VG1"/>
  893. </cal:ActionMessage>
  894. </i:EventTrigger>
  895. </i:Interaction.Triggers>
  896. </RadioButton>
  897. <RadioButton x:Name="VG5" Content="VG2" GroupName="PressureVG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="390,0" IsEnabled="{Binding IsPressureStabilizeVGEnabled}">
  898. <i:Interaction.Triggers>
  899. <i:EventTrigger EventName="Click">
  900. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  901. <cal:Parameter Value="$source"/>
  902. <cal:Parameter Value="Pressure Stabilize"/>
  903. <cal:Parameter Value=""/>
  904. <cal:Parameter Value="VG2"/>
  905. </cal:ActionMessage>
  906. </i:EventTrigger>
  907. </i:Interaction.Triggers>
  908. </RadioButton>
  909. <RadioButton x:Name="VG6" Content="VG3" GroupName="PressureVG" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="560,0" IsEnabled="{Binding IsPressureStabilizeVGEnabled}">
  910. <i:Interaction.Triggers>
  911. <i:EventTrigger EventName="Click">
  912. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  913. <cal:Parameter Value="$source"/>
  914. <cal:Parameter Value="Pressure Stabilize"/>
  915. <cal:Parameter Value=""/>
  916. <cal:Parameter Value="VG3"/>
  917. </cal:ActionMessage>
  918. </i:EventTrigger>
  919. </i:Interaction.Triggers>
  920. </RadioButton>
  921. </Canvas>
  922. </Grid>
  923. </Canvas>
  924. <Canvas x:Name="O2Density" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  925. <Grid x:Name="gdO2Density" Height="337" Width="680" Margin="10,20,10,10">
  926. <Grid.RowDefinitions>
  927. <RowDefinition Height="*"/>
  928. <RowDefinition Height="*"/>
  929. <RowDefinition Height="*"/>
  930. <RowDefinition Height="*"/>
  931. </Grid.RowDefinitions>
  932. <Grid.ColumnDefinitions>
  933. <ColumnDefinition Width="*"/>
  934. <ColumnDefinition Width="*"/>
  935. <ColumnDefinition Width="*"/>
  936. </Grid.ColumnDefinitions>
  937. <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Text="O2 Condition" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" FontWeight="Bold" Margin="35,-10,0,0"/>
  938. <RadioButton Grid.Row="1" Grid.Column="1" x:Name="o2None" Content="None" GroupName="_O2Density" FontSize="20" Height="48" Margin="19,18,30,18">
  939. <i:Interaction.Triggers>
  940. <i:EventTrigger EventName="Click">
  941. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  942. <cal:Parameter Value="$source"/>
  943. <cal:Parameter Value="O2"/>
  944. <cal:Parameter Value="None"/>
  945. <cal:Parameter Value=""/>
  946. </cal:ActionMessage>
  947. </i:EventTrigger>
  948. </i:Interaction.Triggers>
  949. </RadioButton>
  950. <TextBlock Grid.Row="2" Grid.Column="0" Text="{Binding O2Unit}" FontSize="20" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="45,0,0,0"/>
  951. <!--<RadioButton Grid.Row="1" Grid.Column="1" x:Name="o2More" Content="Wait More Than" GroupName="ReachTemp" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="20,10">
  952. <i:Interaction.Triggers>
  953. <i:EventTrigger EventName="Click">
  954. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  955. <cal:Parameter Value="$source"/>
  956. <cal:Parameter Value="Temp"/>
  957. <cal:Parameter Value="WaitMoreThan"/>
  958. <cal:Parameter Value=""/>
  959. </cal:ActionMessage>
  960. </i:EventTrigger>
  961. </i:Interaction.Triggers>
  962. </RadioButton>-->
  963. <RadioButton Grid.Row="1" Grid.Column="2" x:Name="o2Less" Content="Wait Less Than" GroupName="_O2Density" FontSize="20" Width="160" Height="48" HorizontalAlignment="Left" Margin="-20,10">
  964. <i:Interaction.Triggers>
  965. <i:EventTrigger EventName="Click">
  966. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  967. <cal:Parameter Value="$source"/>
  968. <cal:Parameter Value="O2"/>
  969. <cal:Parameter Value="WaitLessThan"/>
  970. <cal:Parameter Value=""/>
  971. </cal:ActionMessage>
  972. </i:EventTrigger>
  973. </i:Interaction.Triggers>
  974. </RadioButton>
  975. <TextBox Text="{Binding O2DensityValue, UpdateSourceTrigger=PropertyChanged}" Tag="Number" Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" Height="50" Width="350" HorizontalAlignment="Left" Margin="20,10,5,10" FontSize="20" IsEnabled="{Binding IsO2DensityEnabled}"/>
  976. </Grid>
  977. </Canvas>
  978. <Canvas x:Name="ProcessTimeToEnd" Visibility="Hidden" IsEnabled="{Binding IsEnable}">
  979. <Grid x:Name="gdProcessTimeToEnd" Height="337" Width="688" Margin="10,20,10,10">
  980. <Grid.RowDefinitions>
  981. <RowDefinition Height="*"/>
  982. <RowDefinition Height="*"/>
  983. <RowDefinition Height="*"/>
  984. <RowDefinition Height="*"/>
  985. </Grid.RowDefinitions>
  986. <Grid.ColumnDefinitions>
  987. <ColumnDefinition Width="*"/>
  988. <ColumnDefinition Width="2*"/>
  989. </Grid.ColumnDefinitions>
  990. <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Text="Process Time To End" FontSize="30" VerticalAlignment="Center" HorizontalAlignment="Left" FontWeight="Bold" Margin="35,-10,0,0"/>
  991. <RadioButton Grid.Row="1" Grid.Column="0" Content="None" GroupName="ProcessTimeToEnd" FontSize="20" Width="180" Height="48" HorizontalAlignment="Right" Margin="0,10">
  992. <i:Interaction.Triggers>
  993. <i:EventTrigger EventName="Click">
  994. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  995. <cal:Parameter Value="$source"/>
  996. <cal:Parameter Value="ProcessTimeToEnd"/>
  997. <cal:Parameter Value="0"/>
  998. <cal:Parameter Value=""/>
  999. </cal:ActionMessage>
  1000. </i:EventTrigger>
  1001. </i:Interaction.Triggers>
  1002. </RadioButton>
  1003. <RadioButton Grid.Row="1" Grid.Column="1" Content="Wait" GroupName="ProcessTimeToEnd" FontSize="20" Width="180" Height="48" HorizontalAlignment="Left" Margin="20,10">
  1004. <i:Interaction.Triggers>
  1005. <i:EventTrigger EventName="Click">
  1006. <cal:ActionMessage MethodName="RecipeConditionCheckSubCommand">
  1007. <cal:Parameter Value="$source"/>
  1008. <cal:Parameter Value="ProcessTimeToEnd"/>
  1009. <cal:Parameter Value="0"/>
  1010. <cal:Parameter Value=""/>
  1011. </cal:ActionMessage>
  1012. </i:EventTrigger>
  1013. </i:Interaction.Triggers>
  1014. </RadioButton>
  1015. </Grid>
  1016. </Canvas>
  1017. <Button Content="Save" Canvas.Left="424" Canvas.Top="594" Style="{StaticResource CommandButton}" IsEnabled="{Binding IsEnable}" Height="45" Width="130">
  1018. <i:Interaction.Triggers>
  1019. <i:EventTrigger EventName="Click">
  1020. <cal:ActionMessage MethodName="ConditionCheckSave">
  1021. </cal:ActionMessage>
  1022. </i:EventTrigger>
  1023. </i:Interaction.Triggers>
  1024. </Button>
  1025. <Button Content="Close" Canvas.Left="568" Canvas.Top="594" Style="{StaticResource CommandButton}" Height="45" Width="130">
  1026. <i:Interaction.Triggers>
  1027. <i:EventTrigger EventName="Click">
  1028. <cal:ActionMessage MethodName="ConditionCheckCancel">
  1029. </cal:ActionMessage>
  1030. </i:EventTrigger>
  1031. </i:Interaction.Triggers>
  1032. </Button>
  1033. </Canvas>
  1034. </DockPanel>
  1035. </Border>
  1036. </Grid>
  1037. </UserControl>