Kepler2300GasLeakCheckView.xaml 153 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700
  1. <UserControl x:Class="Venus_MainPages.Views.Kepler2300GasLeakCheckView"
  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:prism="http://prismlibrary.com/"
  9. prism:ViewModelLocator.AutoWireViewModel="True"
  10. xmlns:ctrls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  11. xmlns:unity="clr-namespace:Venus_MainPages.Unity"
  12. xmlns:converters="clr-namespace:Venus_Themes.Converters;assembly=Venus_Themes"
  13. xmlns:converters2="clr-namespace:Venus_MainPages.Converters"
  14. xmlns:customControls="clr-namespace:Venus_Themes.CustomControls;assembly=Venus_Themes"
  15. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  16. d:DesignHeight="450" d:DesignWidth="2000">
  17. <i:Interaction.Triggers>
  18. <i:EventTrigger EventName="Loaded">
  19. <i:InvokeCommandAction Command="{Binding LoadedCommand}"/>
  20. </i:EventTrigger>
  21. </i:Interaction.Triggers>
  22. <UserControl.Resources>
  23. <LinearGradientBrush x:Key="buttonBrush" StartPoint="0.5,0" EndPoint="0.5,1">
  24. <GradientStop Color="White" Offset="0.0" />
  25. <GradientStop Color="Gray" Offset="0.1" />
  26. <GradientStop Color="White" Offset="1" />
  27. </LinearGradientBrush>
  28. <converters:IntToIsEnableConverter x:Key="intToIsEnableConverter"/>
  29. <converters:ToBoolMultiValueConverter x:Key="toBoolMultiValueConverter"/>
  30. <converters:ToBoolMultiValueConverter2 x:Key="toBoolMultiValueConverter2"/>
  31. <converters:ToBoolMultiValueConverter3 x:Key="toBoolMultiValueConverter3"/>
  32. <converters:ToBoolMultiValueConverter4 x:Key="toBoolMultiValueConverter4"/>
  33. <converters:ToBoolMultiValueConverter5 x:Key="toBoolMultiValueConverter5"/>
  34. <converters:BoolToColor x:Key="boolToColor"/>
  35. <converters:BoolToColor2 x:Key="boolToColor2"/>
  36. <converters:BoolToColor3 x:Key="boolToColor3"/>
  37. <converters:BoolToColor4 x:Key="boolToColor4"/>
  38. <converters:BoolToColor5 x:Key="boolToColor5"/>
  39. <converters:BoolToBool x:Key="BoolToBool"/>
  40. <converters:IntToBoolConverter x:Key="converters:IntToBoolConverter"/>
  41. <converters:IntToBoolConverter2 x:Key="converters:IntToBoolConverter2"/>
  42. <converters:BoolToVisibility x:Key="BoolToVisibility"/>
  43. <converters2:AllNoneCheckboxConverter x:Key="AllNoneCheckboxConverter"/>
  44. <converters2:BoolToHeightConverter x:Key="BoolToHeightConverter"/>
  45. <converters:BoolToVisibility2 x:Key="BoolToVisibility2"/>
  46. </UserControl.Resources>
  47. <Canvas Margin="50,0,62,0">
  48. <Canvas Width="1234" Height="580" HorizontalAlignment="Left" VerticalAlignment="Top" Visibility="{Binding GasIs12,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource bool2VisibilityConverter}}" Canvas.Left="104">
  49. <Canvas Canvas.Top="-85" >
  50. <Canvas.RenderTransform>
  51. <ScaleTransform ScaleX=".9" ScaleY=".9"/>
  52. </Canvas.RenderTransform>
  53. <ctrls:Pipe2 Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="487" Canvas.Top="674" HorizontalAlignment="Left" VerticalAlignment="Center" RotateTransformValue="90" Panel.ZIndex="9"/>
  54. <ctrls:Pipe2 Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="487" Canvas.Top="674" HorizontalAlignment="Left" VerticalAlignment="Center" RotateTransformValue="90" Panel.ZIndex="9"/>
  55. <!--N2-->
  56. <ctrls:FlowPipe Name="N2Pipe3" Height="8" Width="230" Canvas.Left="255" Canvas.Top="120">
  57. <ctrls:FlowPipe.IsFlowing>
  58. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter}">
  59. <Binding Path="PVN22ValveIsOpen"/>
  60. <Binding Path="N2ValveIsOpen"/>
  61. </MultiBinding>
  62. </ctrls:FlowPipe.IsFlowing>
  63. </ctrls:FlowPipe>
  64. <TextBlock Text="Vent Valve" Canvas.Left="416" Canvas.Top="94"/>
  65. <customControls:CommonValveControl Status="{Binding N2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="114" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="N2" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  66. <ctrls:FlowPipe x:Name="N2Pipe4" Height="8" Width="193" Canvas.Left="64" Canvas.Top="120">
  67. <ctrls:FlowPipe.IsFlowing>
  68. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter}">
  69. <Binding Path="PVN21ValveIsOpen"/>
  70. <Binding Path="PVN22ValveIsOpen"/>
  71. <Binding Path="N2ValveIsOpen"/>
  72. </MultiBinding>
  73. </ctrls:FlowPipe.IsFlowing>
  74. </ctrls:FlowPipe>
  75. <TextBlock Text="VN22" Canvas.Left="280" Canvas.Top="94"/>
  76. <customControls:CommonValveControl Status="{Binding PVN22ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="288" Canvas.Top="114" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVN22" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  77. <ctrls:FlowPipe Height="8" Width="308" Canvas.Left="176" Canvas.Top="162" IsFlowing="{Binding MFC1ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  78. <TextBlock Text="V1" Canvas.Left="438" Canvas.Top="140" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  79. <customControls:CommonValveControl Status="{Binding MFC1ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="156" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc1" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  80. <ctrls:FlowPipe Height="8" Width="114" Canvas.Left="64" Canvas.Top="162" IsFlowing="{Binding PV11ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  81. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="198" IsFlowing="{Binding PV12ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  82. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="178" Canvas.Top="168" RotateTransformValue="90" IsFlowing="{Binding PV12ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  83. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="206" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  84. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="257" Canvas.Top="125" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  85. <ctrls:FlowPipe.IsFlowing>
  86. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  87. <Binding Path="PV12ValveIsOpen"/>
  88. <Binding Path="PV22ValveIsOpen"/>
  89. <Binding Path="PV32ValveIsOpen"/>
  90. <Binding Path="PV42ValveIsOpen"/>
  91. <Binding Path="PV52ValveIsOpen"/>
  92. <Binding Path="PV62ValveIsOpen"/>
  93. <Binding Path="PV72ValveIsOpen"/>
  94. <Binding Path="PV82ValveIsOpen"/>
  95. <Binding Path="PV92ValveIsOpen"/>
  96. <Binding Path="PVA2ValveIsOpen"/>
  97. <Binding Path="PVB2ValveIsOpen"/>
  98. <Binding Path="PVC2ValveIsOpen"/>
  99. </MultiBinding>
  100. </ctrls:FlowPipe.IsFlowing>
  101. </ctrls:FlowPipe>
  102. <ctrls:FlowPipe Height="8" Width="45" Canvas.Left="487" Canvas.Top="125" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  103. <ctrls:FlowPipe.IsFlowing>
  104. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  105. <Binding Path="MFC1ValveIsOpen"/>
  106. <Binding Path="MFC2ValveIsOpen"/>
  107. <Binding Path="MFC3ValveIsOpen"/>
  108. <Binding Path="MFC4ValveIsOpen"/>
  109. <Binding Path="MFC5ValveIsOpen"/>
  110. <Binding Path="MFC6ValveIsOpen"/>
  111. <Binding Path="MFC7ValveIsOpen"/>
  112. <Binding Path="MFC8ValveIsOpen"/>
  113. <Binding Path="MFC9ValveIsOpen"/>
  114. <Binding Path="MFC10ValveIsOpen"/>
  115. <Binding Path="MFC11ValveIsOpen"/>
  116. <Binding Path="MFC12ValveIsOpen"/>
  117. </MultiBinding>
  118. </ctrls:FlowPipe.IsFlowing>
  119. </ctrls:FlowPipe>
  120. <!--SF6-->
  121. <ctrls:FlowPipe Height="8" Width="310" Canvas.Left="174" Canvas.Top="218" IsFlowing="{Binding MFC2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  122. <TextBlock Text="V2" Canvas.Left="438" Canvas.Top="196" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  123. <customControls:CommonValveControl Status="{Binding MFC2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="212" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc2" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  124. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="218" IsFlowing="{Binding PV21ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  125. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="254" IsFlowing="{Binding PV22ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  126. <ctrls:FlowPipe Height="8" Width="32" Canvas.Left="178" Canvas.Top="222" RotateTransformValue="90" IsFlowing="{Binding PV22ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  127. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="262" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  128. <ctrls:FlowPipe Height="8" Width="60" Canvas.Left="257" Canvas.Top="202" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  129. <ctrls:FlowPipe.IsFlowing>
  130. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  131. <Binding Path="PV22ValveIsOpen"/>
  132. <Binding Path="PV32ValveIsOpen"/>
  133. <Binding Path="PV42ValveIsOpen"/>
  134. <Binding Path="PV52ValveIsOpen"/>
  135. <Binding Path="PV62ValveIsOpen"/>
  136. <Binding Path="PV72ValveIsOpen"/>
  137. <Binding Path="PV82ValveIsOpen"/>
  138. <Binding Path="PV92ValveIsOpen"/>
  139. <Binding Path="PVA2ValveIsOpen"/>
  140. <Binding Path="PVB2ValveIsOpen"/>
  141. <Binding Path="PVC2ValveIsOpen"/>
  142. </MultiBinding>
  143. </ctrls:FlowPipe.IsFlowing>
  144. </ctrls:FlowPipe>
  145. <ctrls:FlowPipe Height="8" Width="57" Canvas.Left="487" Canvas.Top="168" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  146. <ctrls:FlowPipe.IsFlowing>
  147. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  148. <Binding Path="MFC2ValveIsOpen"/>
  149. <Binding Path="MFC3ValveIsOpen"/>
  150. <Binding Path="MFC4ValveIsOpen"/>
  151. <Binding Path="MFC5ValveIsOpen"/>
  152. <Binding Path="MFC6ValveIsOpen"/>
  153. <Binding Path="MFC7ValveIsOpen"/>
  154. <Binding Path="MFC8ValveIsOpen"/>
  155. <Binding Path="MFC9ValveIsOpen"/>
  156. <Binding Path="MFC10ValveIsOpen"/>
  157. <Binding Path="MFC11ValveIsOpen"/>
  158. <Binding Path="MFC12ValveIsOpen"/>
  159. </MultiBinding>
  160. </ctrls:FlowPipe.IsFlowing>
  161. </ctrls:FlowPipe>
  162. <!--Gas3-->
  163. <ctrls:FlowPipe Height="8" Width="310" Canvas.Left="174" Canvas.Top="274" IsFlowing="{Binding MFC3ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  164. <TextBlock Text="V3" Canvas.Left="438" Canvas.Top="252" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  165. <customControls:CommonValveControl Status="{Binding MFC3ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="268" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc3" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  166. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="274" IsFlowing="{Binding PV31ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  167. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="310" IsFlowing="{Binding PV32ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  168. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="178" Canvas.Top="280" RotateTransformValue="90" IsFlowing="{Binding PV32ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  169. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="318" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  170. <ctrls:FlowPipe Height="8" Width="60" Canvas.Left="257" Canvas.Top="257" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  171. <ctrls:FlowPipe.IsFlowing>
  172. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  173. <Binding Path="PV32ValveIsOpen"/>
  174. <Binding Path="PV42ValveIsOpen"/>
  175. <Binding Path="PV52ValveIsOpen"/>
  176. <Binding Path="PV62ValveIsOpen"/>
  177. <Binding Path="PV72ValveIsOpen"/>
  178. <Binding Path="PV82ValveIsOpen"/>
  179. <Binding Path="PV92ValveIsOpen"/>
  180. <Binding Path="PVA2ValveIsOpen"/>
  181. <Binding Path="PVB2ValveIsOpen"/>
  182. <Binding Path="PVC2ValveIsOpen"/>
  183. </MultiBinding>
  184. </ctrls:FlowPipe.IsFlowing>
  185. </ctrls:FlowPipe>
  186. <ctrls:FlowPipe Height="8" Width="58" Canvas.Left="487" Canvas.Top="223" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  187. <ctrls:FlowPipe.IsFlowing>
  188. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  189. <Binding Path="MFC3ValveIsOpen"/>
  190. <Binding Path="MFC4ValveIsOpen"/>
  191. <Binding Path="MFC5ValveIsOpen"/>
  192. <Binding Path="MFC6ValveIsOpen"/>
  193. <Binding Path="MFC7ValveIsOpen"/>
  194. <Binding Path="MFC8ValveIsOpen"/>
  195. <Binding Path="MFC9ValveIsOpen"/>
  196. <Binding Path="MFC10ValveIsOpen"/>
  197. <Binding Path="MFC11ValveIsOpen"/>
  198. <Binding Path="MFC12ValveIsOpen"/>
  199. </MultiBinding>
  200. </ctrls:FlowPipe.IsFlowing>
  201. </ctrls:FlowPipe>
  202. <!--Gas4-->
  203. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="328" IsFlowing="{Binding PV41ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  204. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="356" IsFlowing="{Binding PV42ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  205. <ctrls:FlowPipe Height="8" Width="310" Canvas.Left="174" Canvas.Top="328" IsFlowing="{Binding MFC4ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  206. <TextBlock Text="V4" Canvas.Left="438" Canvas.Top="306" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  207. <customControls:CommonValveControl Status="{Binding MFC4ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="322" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc4" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  208. <ctrls:FlowPipe Height="8" Width="22" Canvas.Left="178" Canvas.Top="335" RotateTransformValue="90" IsFlowing="{Binding PV42ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  209. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="364" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  210. <ctrls:FlowPipe Height="8" Width="53" Canvas.Left="257" Canvas.Top="311" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  211. <ctrls:FlowPipe.IsFlowing>
  212. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  213. <Binding Path="PV42ValveIsOpen"/>
  214. <Binding Path="PV52ValveIsOpen"/>
  215. <Binding Path="PV62ValveIsOpen"/>
  216. <Binding Path="PV72ValveIsOpen"/>
  217. <Binding Path="PV82ValveIsOpen"/>
  218. <Binding Path="PV92ValveIsOpen"/>
  219. <Binding Path="PVA2ValveIsOpen"/>
  220. <Binding Path="PVB2ValveIsOpen"/>
  221. <Binding Path="PVC2ValveIsOpen"/>
  222. </MultiBinding>
  223. </ctrls:FlowPipe.IsFlowing>
  224. </ctrls:FlowPipe>
  225. <ctrls:FlowPipe Height="8" Width="57" Canvas.Left="487" Canvas.Top="278" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  226. <ctrls:FlowPipe.IsFlowing>
  227. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  228. <Binding Path="MFC4ValveIsOpen"/>
  229. <Binding Path="MFC5ValveIsOpen"/>
  230. <Binding Path="MFC6ValveIsOpen"/>
  231. <Binding Path="MFC7ValveIsOpen"/>
  232. <Binding Path="MFC8ValveIsOpen"/>
  233. <Binding Path="MFC9ValveIsOpen"/>
  234. <Binding Path="MFC10ValveIsOpen"/>
  235. <Binding Path="MFC11ValveIsOpen"/>
  236. <Binding Path="MFC12ValveIsOpen"/>
  237. </MultiBinding>
  238. </ctrls:FlowPipe.IsFlowing>
  239. </ctrls:FlowPipe>
  240. <!--Gas5-->
  241. <ctrls:FlowPipe Height="8" Width="419" Canvas.Left="64" Canvas.Top="370" IsFlowing="{Binding MFC5ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  242. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="399" IsFlowing="{Binding PV52ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  243. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="370" IsFlowing="{Binding PV51ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  244. <TextBlock Text="V5" Canvas.Left="438" Canvas.Top="349" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  245. <customControls:CommonValveControl Status="{Binding MFC5ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="364" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc5" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  246. <ctrls:FlowPipe Height="8" Width="22" Canvas.Left="178" Canvas.Top="377" RotateTransformValue="90" IsFlowing="{Binding PV52ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  247. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="407" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  248. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="361" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  249. <ctrls:FlowPipe.IsFlowing>
  250. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  251. <Binding Path="PV52ValveIsOpen"/>
  252. <Binding Path="PV62ValveIsOpen"/>
  253. <Binding Path="PV72ValveIsOpen"/>
  254. <Binding Path="PV82ValveIsOpen"/>
  255. <Binding Path="PV92ValveIsOpen"/>
  256. <Binding Path="PVA2ValveIsOpen"/>
  257. <Binding Path="PVB2ValveIsOpen"/>
  258. <Binding Path="PVC2ValveIsOpen"/>
  259. </MultiBinding>
  260. </ctrls:FlowPipe.IsFlowing>
  261. </ctrls:FlowPipe>
  262. <ctrls:FlowPipe Height="8" Width="45" Canvas.Left="487" Canvas.Top="332" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  263. <ctrls:FlowPipe.IsFlowing>
  264. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  265. <Binding Path="MFC5ValveIsOpen"/>
  266. <Binding Path="MFC6ValveIsOpen"/>
  267. <Binding Path="MFC7ValveIsOpen"/>
  268. <Binding Path="MFC8ValveIsOpen"/>
  269. <Binding Path="MFC9ValveIsOpen"/>
  270. <Binding Path="MFC10ValveIsOpen"/>
  271. <Binding Path="MFC11ValveIsOpen"/>
  272. <Binding Path="MFC12ValveIsOpen"/>
  273. </MultiBinding>
  274. </ctrls:FlowPipe.IsFlowing>
  275. </ctrls:FlowPipe>
  276. <!--6-->
  277. <ctrls:FlowPipe Height="8" Width="419" Canvas.Left="65" Canvas.Top="415" IsFlowing="{Binding MFC6ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  278. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="415" IsFlowing="{Binding PV61ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  279. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="441" IsFlowing="{Binding PV62ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  280. <TextBlock Text="V6" Canvas.Left="438" Canvas.Top="393" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  281. <customControls:CommonValveControl Status="{Binding MFC6ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="409" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc6" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  282. <ctrls:FlowPipe Height="8" Width="22" Canvas.Left="178" Canvas.Top="422" RotateTransformValue="90" IsFlowing="{Binding PV62ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  283. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="449" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  284. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="403" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  285. <ctrls:FlowPipe.IsFlowing>
  286. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  287. <Binding Path="PV62ValveIsOpen"/>
  288. <Binding Path="PV72ValveIsOpen"/>
  289. <Binding Path="PV82ValveIsOpen"/>
  290. <Binding Path="PV92ValveIsOpen"/>
  291. <Binding Path="PVA2ValveIsOpen"/>
  292. <Binding Path="PVB2ValveIsOpen"/>
  293. <Binding Path="PVC2ValveIsOpen"/>
  294. </MultiBinding>
  295. </ctrls:FlowPipe.IsFlowing>
  296. </ctrls:FlowPipe>
  297. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="487" Canvas.Top="375" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  298. <ctrls:FlowPipe.IsFlowing>
  299. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  300. <Binding Path="MFC6ValveIsOpen"/>
  301. <Binding Path="MFC7ValveIsOpen"/>
  302. <Binding Path="MFC8ValveIsOpen"/>
  303. <Binding Path="MFC9ValveIsOpen"/>
  304. <Binding Path="MFC10ValveIsOpen"/>
  305. <Binding Path="MFC11ValveIsOpen"/>
  306. <Binding Path="MFC12ValveIsOpen"/>
  307. </MultiBinding>
  308. </ctrls:FlowPipe.IsFlowing>
  309. </ctrls:FlowPipe>
  310. <!--Gas7-->
  311. <ctrls:FlowPipe Height="8" Width="418" Canvas.Left="65" Canvas.Top="458" IsFlowing="{Binding MFC7ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  312. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="458" IsFlowing="{Binding PV71ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  313. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="484" IsFlowing="{Binding PV72ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  314. <TextBlock Text="V7" Canvas.Left="438" Canvas.Top="436" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  315. <customControls:CommonValveControl Status="{Binding MFC7ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="452" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc7" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  316. <ctrls:FlowPipe Height="8" Width="22" Canvas.Left="178" Canvas.Top="465" RotateTransformValue="90" IsFlowing="{Binding PV72ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  317. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="492" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  318. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="446" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  319. <ctrls:FlowPipe.IsFlowing>
  320. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  321. <Binding Path="PV72ValveIsOpen"/>
  322. <Binding Path="PV82ValveIsOpen"/>
  323. <Binding Path="PV92ValveIsOpen"/>
  324. <Binding Path="PVA2ValveIsOpen"/>
  325. <Binding Path="PVB2ValveIsOpen"/>
  326. <Binding Path="PVC2ValveIsOpen"/>
  327. </MultiBinding>
  328. </ctrls:FlowPipe.IsFlowing>
  329. </ctrls:FlowPipe>
  330. <ctrls:FlowPipe Height="8" Width="45" Canvas.Left="487" Canvas.Top="419" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  331. <ctrls:FlowPipe.IsFlowing>
  332. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  333. <Binding Path="MFC7ValveIsOpen"/>
  334. <Binding Path="MFC8ValveIsOpen"/>
  335. <Binding Path="MFC9ValveIsOpen"/>
  336. <Binding Path="MFC10ValveIsOpen"/>
  337. <Binding Path="MFC11ValveIsOpen"/>
  338. <Binding Path="MFC12ValveIsOpen"/>
  339. </MultiBinding>
  340. </ctrls:FlowPipe.IsFlowing>
  341. </ctrls:FlowPipe>
  342. <!--Gas8-->
  343. <ctrls:FlowPipe Height="8" Width="418" Canvas.Left="65" Canvas.Top="499" IsFlowing="{Binding MFC8ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  344. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="499" IsFlowing="{Binding PV81ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  345. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="527" IsFlowing="{Binding PV82ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  346. <TextBlock Text="V8" Canvas.Left="438" Canvas.Top="477" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  347. <customControls:CommonValveControl Status="{Binding MFC8ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="493" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc8" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  348. <ctrls:FlowPipe Height="8" Width="22" Canvas.Left="178" Canvas.Top="505" RotateTransformValue="90" IsFlowing="{Binding PV82ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  349. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="535" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  350. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="489" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  351. <ctrls:FlowPipe.IsFlowing>
  352. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  353. <Binding Path="PV82ValveIsOpen"/>
  354. <Binding Path="PV92ValveIsOpen"/>
  355. <Binding Path="PVA2ValveIsOpen"/>
  356. <Binding Path="PVB2ValveIsOpen"/>
  357. <Binding Path="PVC2ValveIsOpen"/>
  358. </MultiBinding>
  359. </ctrls:FlowPipe.IsFlowing>
  360. </ctrls:FlowPipe>
  361. <ctrls:FlowPipe Height="8" Width="47" Canvas.Left="487" Canvas.Top="460" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  362. <ctrls:FlowPipe.IsFlowing>
  363. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  364. <Binding Path="MFC8ValveIsOpen"/>
  365. <Binding Path="MFC9ValveIsOpen"/>
  366. <Binding Path="MFC10ValveIsOpen"/>
  367. <Binding Path="MFC11ValveIsOpen"/>
  368. <Binding Path="MFC12ValveIsOpen"/>
  369. </MultiBinding>
  370. </ctrls:FlowPipe.IsFlowing>
  371. </ctrls:FlowPipe>
  372. <!--Gas9-->
  373. <ctrls:FlowPipe Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="418" Canvas.Left="64" Canvas.Top="543" IsFlowing="{Binding MFC9ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  374. <ctrls:FlowPipe Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="112" Canvas.Left="64" Canvas.Top="543" IsFlowing="{Binding PV91ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  375. <ctrls:FlowPipe Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="76" Canvas.Left="175" Canvas.Top="569" IsFlowing="{Binding PV92ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  376. <TextBlock Text="V9" Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="440" Canvas.Top="520" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  377. <customControls:CommonValveControl Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding MFC9ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="536" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc9" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  378. <ctrls:FlowPipe Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="22" Canvas.Left="178" Canvas.Top="550" RotateTransformValue="90" IsFlowing="{Binding PV92ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  379. <ctrls:Pipe2 Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="183" Canvas.Top="577" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  380. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="531" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  381. <ctrls:FlowPipe.IsFlowing>
  382. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  383. <Binding Path="PV92ValveIsOpen"/>
  384. <Binding Path="PVA2ValveIsOpen"/>
  385. <Binding Path="PVB2ValveIsOpen"/>
  386. <Binding Path="PVC2ValveIsOpen"/>
  387. </MultiBinding>
  388. </ctrls:FlowPipe.IsFlowing>
  389. </ctrls:FlowPipe>
  390. <ctrls:FlowPipe Height="8" Width="47" Canvas.Left="487" Canvas.Top="504" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  391. <ctrls:FlowPipe.IsFlowing>
  392. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  393. <Binding Path="MFC9ValveIsOpen"/>
  394. <Binding Path="MFC10ValveIsOpen"/>
  395. <Binding Path="MFC11ValveIsOpen"/>
  396. <Binding Path="MFC12ValveIsOpen"/>
  397. </MultiBinding>
  398. </ctrls:FlowPipe.IsFlowing>
  399. </ctrls:FlowPipe>
  400. <!--Gas10-->
  401. <ctrls:FlowPipe Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="418" Canvas.Left="64" Canvas.Top="588" IsFlowing="{Binding MFC10ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  402. <ctrls:FlowPipe Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="112" Canvas.Left="64" Canvas.Top="588" IsFlowing="{Binding PVA1ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  403. <ctrls:FlowPipe Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="76" Canvas.Left="175" Canvas.Top="615" IsFlowing="{Binding PVA2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  404. <TextBlock Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Text="V10" Canvas.Left="436" Canvas.Top="567" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  405. <customControls:CommonValveControl Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding MFC10ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="582" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc10" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  406. <ctrls:FlowPipe Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="22" Canvas.Left="178" Canvas.Top="595" RotateTransformValue="90" IsFlowing="{Binding PVA2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  407. <ctrls:Pipe2 Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="183" Canvas.Top="623" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  408. <ctrls:FlowPipe Height="8" Width="48" Canvas.Left="257" Canvas.Top="575" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  409. <ctrls:FlowPipe.IsFlowing>
  410. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  411. <Binding Path="PVA2ValveIsOpen"/>
  412. <Binding Path="PVB2ValveIsOpen"/>
  413. <Binding Path="PVC2ValveIsOpen"/>
  414. </MultiBinding>
  415. </ctrls:FlowPipe.IsFlowing>
  416. </ctrls:FlowPipe>
  417. <ctrls:FlowPipe Height="8" Width="47" Canvas.Left="487" Canvas.Top="548" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  418. <ctrls:FlowPipe.IsFlowing>
  419. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  420. <Binding Path="MFC10ValveIsOpen"/>
  421. <Binding Path="MFC11ValveIsOpen"/>
  422. <Binding Path="MFC12ValveIsOpen"/>
  423. </MultiBinding>
  424. </ctrls:FlowPipe.IsFlowing>
  425. </ctrls:FlowPipe>
  426. <!--Gas11-->
  427. <ctrls:FlowPipe Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="418" Canvas.Left="65" Canvas.Top="634" IsFlowing="{Binding MFC11ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  428. <ctrls:FlowPipe Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="112" Canvas.Left="64" Canvas.Top="634" IsFlowing="{Binding PVB1ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  429. <ctrls:FlowPipe Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="76" Canvas.Left="175" Canvas.Top="661" IsFlowing="{Binding PVB2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  430. <TextBlock Text="V11" Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="436" Canvas.Top="612" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  431. <customControls:CommonValveControl Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding MFC11ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="627" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc11" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  432. <ctrls:FlowPipe Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="22" Canvas.Left="178" Canvas.Top="640" RotateTransformValue="90" IsFlowing="{Binding PVB2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  433. <ctrls:Pipe2 Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="183" Canvas.Top="669" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  434. <ctrls:FlowPipe Height="8" Width="49" Canvas.Left="257" Canvas.Top="620" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  435. <ctrls:FlowPipe.IsFlowing>
  436. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  437. <Binding Path="PVB2ValveIsOpen"/>
  438. <Binding Path="PVC2ValveIsOpen"/>
  439. </MultiBinding>
  440. </ctrls:FlowPipe.IsFlowing>
  441. </ctrls:FlowPipe>
  442. <ctrls:FlowPipe Height="8" Width="49" Canvas.Left="487" Canvas.Top="593" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  443. <ctrls:FlowPipe.IsFlowing>
  444. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  445. <Binding Path="MFC11ValveIsOpen"/>
  446. <Binding Path="MFC12ValveIsOpen"/>
  447. </MultiBinding>
  448. </ctrls:FlowPipe.IsFlowing>
  449. </ctrls:FlowPipe>
  450. <!--Gas12-->
  451. <ctrls:FlowPipe Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="415" Canvas.Left="65" Canvas.Top="679" IsFlowing="{Binding MFC12ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  452. <ctrls:FlowPipe Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="112" Canvas.Left="64" Canvas.Top="679" IsFlowing="{Binding PVC1ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  453. <ctrls:FlowPipe Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="92" Canvas.Left="175" Canvas.Top="709" IsFlowing="{Binding PVC2ValveIsOpen}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  454. <TextBlock Text="V12" Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="436" Canvas.Top="658" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  455. <customControls:CommonValveControl Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding MFC12ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="673" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="Mfc12" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  456. <ctrls:FlowPipe Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Height="8" Width="22" Canvas.Left="178" Canvas.Top="685" RotateTransformValue="90" IsFlowing="{Binding PVC2ValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  457. <ctrls:Pipe2 Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="183" Canvas.Top="717" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-180" />
  458. <ctrls:FlowPipe Height="8" Width="48" Canvas.Left="257" Canvas.Top="664" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  459. <ctrls:FlowPipe.IsFlowing>
  460. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  461. <Binding Path="PVC2ValveIsOpen"/>
  462. </MultiBinding>
  463. </ctrls:FlowPipe.IsFlowing>
  464. </ctrls:FlowPipe>
  465. <ctrls:FlowPipe Height="8" Width="40" Canvas.Left="487" Canvas.Top="672" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top">
  466. <ctrls:FlowPipe.IsFlowing>
  467. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  468. <Binding Path="PVC2ValveIsOpen"/>
  469. </MultiBinding>
  470. </ctrls:FlowPipe.IsFlowing>
  471. </ctrls:FlowPipe>
  472. <ctrls:FlowPipe Panel.ZIndex="20" Height="8" Width="216" Canvas.Left="262" Canvas.Top="709" IsFlowing="{Binding MainPurgeValveIsOpen}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  473. <ctrls:FlowPipe Panel.ZIndex="20" Height="8" Width="60" Canvas.Left="475" Canvas.Top="709" IsFlowing="{Binding SecondPurgeValveIsOpen}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  474. <customControls:CommonValveControl Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVC2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="703" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVC2" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  475. <TextBlock FontSize="15" Canvas.Left="542" Canvas.Top="701" HorizontalAlignment="Left" VerticalAlignment="Center">To Pump</TextBlock>
  476. <TextBlock Canvas.Left="335" Canvas.Top="724" HorizontalAlignment="Left" VerticalAlignment="Top">Main Purge</TextBlock>
  477. <TextBlock Canvas.Left="487" Canvas.Top="724" HorizontalAlignment="Left" VerticalAlignment="Top">second Purge</TextBlock>
  478. <ctrls:FlowPipe Height="8" Width="41" Canvas.Left="487" Canvas.Top="640" RotateTransformValue="90" IsReverse="True" HorizontalAlignment="Center" VerticalAlignment="Top" Panel.ZIndex="5">
  479. <ctrls:FlowPipe.IsFlowing>
  480. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  481. <Binding Path="MFC12ValveIsOpen"/>
  482. </MultiBinding>
  483. </ctrls:FlowPipe.IsFlowing>
  484. </ctrls:FlowPipe>
  485. <ctrls:Pipe2 Canvas.Left="249" Canvas.Top="717" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="90" Panel.ZIndex="5" RenderTransformOrigin="0.5,0.5" >
  486. <ctrls:Pipe2.RenderTransform>
  487. <TransformGroup>
  488. <ScaleTransform/>
  489. <SkewTransform/>
  490. <RotateTransform Angle="-269.721"/>
  491. <TranslateTransform/>
  492. </TransformGroup>
  493. </ctrls:Pipe2.RenderTransform>
  494. </ctrls:Pipe2>
  495. <TextBlock Text="Pressure Alarm" Canvas.Left="68" Canvas.Top="94"/>
  496. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="114" Fill="{Binding MFCN2Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  497. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="156" Fill="{Binding MFC1Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  498. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="212" Fill="{Binding MFC2Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  499. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="268" Fill="{Binding MFC3Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  500. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="322" Fill="{Binding MFC4Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  501. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="364" Fill="{Binding MFC5Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  502. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="409" Fill="{Binding MFC6Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  503. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="452" Fill="{Binding MFC7Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  504. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="493" Fill="{Binding MFC8Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  505. <Ellipse Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Width="20" Height="20" Canvas.Left="90" Canvas.Top="537" Fill="{Binding MFC9Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  506. <Ellipse Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Width="20" Height="20" Canvas.Left="90" Canvas.Top="582" Fill="{Binding MFC10Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  507. <Ellipse Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Width="20" Height="20" Canvas.Left="90" Canvas.Top="628" Fill="{Binding MFC11Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  508. <Ellipse Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Width="20" Height="20" Canvas.Left="90" Canvas.Top="673" Fill="{Binding MFC12Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm" HorizontalAlignment="Center" VerticalAlignment="Top"></Ellipse>
  509. <!--与chamber上方连接的管道-->
  510. <ctrls:FlowPipe Height="8" Width="386" Canvas.Left="482" Canvas.Top="120">
  511. <ctrls:FlowPipe.IsFlowing>
  512. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  513. <Binding Path="N2ValveIsOpen"/>
  514. <Binding Path="MFC1ValveIsOpen"/>
  515. <Binding Path="MFC2ValveIsOpen"/>
  516. <Binding Path="MFC3ValveIsOpen"/>
  517. <Binding Path="MFC4ValveIsOpen"/>
  518. <Binding Path="MFC5ValveIsOpen"/>
  519. <Binding Path="MFC6ValveIsOpen"/>
  520. <Binding Path="MFC7ValveIsOpen"/>
  521. <Binding Path="MFC8ValveIsOpen"/>
  522. <Binding Path="MFC9ValveIsOpen"/>
  523. <Binding Path="MFC10ValveIsOpen"/>
  524. <Binding Path="MFC11ValveIsOpen"/>
  525. <Binding Path="MFC12ValveIsOpen"/>
  526. </MultiBinding>
  527. </ctrls:FlowPipe.IsFlowing>
  528. </ctrls:FlowPipe>
  529. <!--阀-->
  530. <TextBlock Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="126" Canvas.Top="659" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Language="zh-cn" Text="12"/><Run Text="1"/></TextBlock>
  531. <customControls:CommonValveControl Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVC1ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="673" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVC1" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  532. <TextBlock Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="126" Canvas.Top="611" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Language="zh-cn" Text="11"/><Run Text="1"/></TextBlock>
  533. <customControls:CommonValveControl Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVB1ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="628" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVB1" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  534. <TextBlock Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="127" Canvas.Top="566" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Text="1"/><Run Language="zh-cn" Text="0"/><Run Text="1"/></TextBlock>
  535. <customControls:CommonValveControl Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVA1ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="582" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVA1" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  536. <TextBlock Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Text="V91" Canvas.Left="128" Canvas.Top="522" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  537. <customControls:CommonValveControl Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PV91ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="537" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV91" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
  538. <TextBlock Text="V81" Canvas.Left="128" Canvas.Top="476" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  539. <customControls:CommonValveControl Status="{Binding PV81ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="493" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV81" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  540. <TextBlock Text="V71" Canvas.Left="128" Canvas.Top="435" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  541. <customControls:CommonValveControl Status="{Binding PV71ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="452" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV71" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  542. <TextBlock Text="V61" Canvas.Left="128" Canvas.Top="393" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  543. <customControls:CommonValveControl Status="{Binding PV61ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="409" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV61" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  544. <TextBlock Text="V51" Canvas.Left="128" Canvas.Top="348" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  545. <customControls:CommonValveControl Status="{Binding PV51ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="364" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV51" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  546. <TextBlock Text="V41" Canvas.Left="128" Canvas.Top="306" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  547. <customControls:CommonValveControl Status="{Binding PV41ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="322" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV41" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  548. <TextBlock Text="V31" Canvas.Left="128" Canvas.Top="252" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  549. <customControls:CommonValveControl Status="{Binding PV31ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="268" Tag="PV31" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  550. <TextBlock Text="V21" Canvas.Left="128" Canvas.Top="198" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  551. <customControls:CommonValveControl Status="{Binding PV21ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="212" Tag="PV21" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  552. <TextBlock Text="V11" Canvas.Left="128" Canvas.Top="140" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  553. <customControls:CommonValveControl Status="{Binding PV11ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="156" Tag="PV11" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  554. <TextBlock Text="V12" Canvas.Left="200" Canvas.Top="175" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  555. <customControls:CommonValveControl Status="{Binding PV12ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="191" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV12" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  556. <TextBlock Text="V22" Canvas.Left="200" Canvas.Top="232" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  557. <customControls:CommonValveControl Status="{Binding PV22ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="247" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV22" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  558. <TextBlock Text="V32" Canvas.Left="200" Canvas.Top="287" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  559. <customControls:CommonValveControl Status="{Binding PV32ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="303" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV32" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  560. <TextBlock Text="V42" Canvas.Left="199" Canvas.Top="336" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  561. <customControls:CommonValveControl Status="{Binding PV42ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="349" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV42" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  562. <TextBlock Text="V52" Canvas.Left="199" Canvas.Top="379" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  563. <customControls:CommonValveControl Status="{Binding PV52ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="393" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV52" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  564. <TextBlock Text="V62" Canvas.Left="199" Canvas.Top="422" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  565. <customControls:CommonValveControl Status="{Binding PV62ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="435" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV62" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  566. <TextBlock Text="V72" Canvas.Left="199" Canvas.Top="465" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  567. <customControls:CommonValveControl Status="{Binding PV72ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="478" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV72" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  568. <TextBlock Text="V82" Canvas.Left="199" Canvas.Top="506" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  569. <customControls:CommonValveControl Status="{Binding PV82ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="521" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV82" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  570. <TextBlock Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Text="V92" Canvas.Left="200" Canvas.Top="549" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  571. <customControls:CommonValveControl Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PV92ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="564" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PV92" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  572. <TextBlock Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="199" Canvas.Top="596" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Language="zh-cn" Text="10"/><Run Text="2"/></TextBlock>
  573. <customControls:CommonValveControl Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVA2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="609" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVA2" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  574. <TextBlock Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="199" Canvas.Top="641" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Language="zh-cn" Text="11"/><Run Text="2"/></TextBlock>
  575. <customControls:CommonValveControl Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Status="{Binding PVB2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="655" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVB2" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  576. <TextBlock Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Left="200" Canvas.Top="688" HorizontalAlignment="Left" VerticalAlignment="Center"><Run Text="V"/><Run Text="122"/></TextBlock>
  577. <customControls:CommonValveControl Panel.ZIndex="22" Status="{Binding MainPurgeValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="358" Canvas.Top="704" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="MainPurge" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  578. <customControls:CommonValveControl Panel.ZIndex="22" Status="{Binding SecondPurgeValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="506" Canvas.Top="704" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="SecondPurge" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  579. <TextBlock Text="VN21" Canvas.Left="200" Canvas.Top="136" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  580. <customControls:CommonValveControl Status="{Binding PVN21ValveIsOpen,Mode=TwoWay}" ValveOrientation="Vertical" Height="20" Width="20" Canvas.Left="243" Canvas.Top="132" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="PVN21" Command="{Binding Control12ValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  581. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC1SetPoint,Mode=TwoWay}" IsReadOnly="False" Canvas.Top="137" Canvas.Left="275" LabelValue="MFC1" ToolTip="{Binding MFC1Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC1Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  582. <!--<TextBox Canvas.Top="205" Canvas.Left="250" Width="100" Text="{Binding MfcGas1Setpoint,Mode=TwoWay}"/>-->
  583. <ctrls:TextboxWithLabel Canvas.Top="137" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC1Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  584. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC2SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="192" Canvas.Left="275" LabelValue="MFC2" ToolTip="{Binding MFC2Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC2Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  585. <ctrls:TextboxWithLabel Canvas.Top="192" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC2Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  586. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC3SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="250" Canvas.Left="275" LabelValue="MFC3" ToolTip="{Binding MFC3Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC3Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  587. <ctrls:TextboxWithLabel Canvas.Top="250" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC3Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  588. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC4SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="302" Canvas.Left="275" LabelValue="MFC4" ToolTip="{Binding MFC4Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC4Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  589. <ctrls:TextboxWithLabel Canvas.Top="302" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC4Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  590. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC5SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="344" Canvas.Left="275" LabelValue="MFC5" ToolTip="{Binding MFC5Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC5Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  591. <ctrls:TextboxWithLabel Canvas.Top="344" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC5Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  592. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC6SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="390" Canvas.Left="275" LabelValue="MFC6" ToolTip="{Binding MFC6Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC6Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  593. <ctrls:TextboxWithLabel Canvas.Top="390" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC6Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  594. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC7SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="433" Canvas.Left="275" LabelValue="MFC7" ToolTip="{Binding MFC7Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC7Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  595. <ctrls:TextboxWithLabel Canvas.Top="433" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC7Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  596. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC8SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="474" Canvas.Left="275" LabelValue="MFC8" ToolTip="{Binding MFC8Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC8Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  597. <ctrls:TextboxWithLabel Canvas.Top="474" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC8Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  598. <ctrls:TextboxWithLabel Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" TextBoxValue="{Binding MFC9SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="517" Canvas.Left="275" LabelValue="MFC9" ToolTip="{Binding MFC9Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC9Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  599. <ctrls:TextboxWithLabel Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Top="517" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC9Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  600. <ctrls:TextboxWithLabel Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" TextBoxValue="{Binding MFC10SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="562" Canvas.Left="275" LabelValue="MFC10" ToolTip="{Binding MFC10Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC10Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  601. <ctrls:TextboxWithLabel Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Top="562" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC10Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  602. <ctrls:TextboxWithLabel Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" TextBoxValue="{Binding MFC11SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="608" Canvas.Left="275" LabelValue="MFC11" ToolTip="{Binding MFC11Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC11Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  603. <ctrls:TextboxWithLabel Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Top="608" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC11Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  604. <ctrls:TextboxWithLabel Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" TextBoxValue="{Binding MFC12SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="653" Canvas.Left="275" LabelValue="MFC12" ToolTip="{Binding MFC12Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC12Data.Scale}" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  605. <ctrls:TextboxWithLabel Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Canvas.Top="653" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC12Data.FeedBack,StringFormat='F1'}" TextBoxColor="#D7E4BD" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  606. <TextBlock FontSize="12" Text="Vent N2" Canvas.Left="15" Canvas.Top="117" Foreground="Black" Block.TextAlignment="Right" Panel.ZIndex="4"/>
  607. <TextBlock FontSize="12" Canvas.Left="-5" Canvas.Top="158" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  608. <TextBlock.Text>
  609. <MultiBinding StringFormat="{}{0}:{1}">
  610. <Binding Path="MFC1Data.DisplayName"></Binding>
  611. <Binding Path="MFC1Data.Scale"></Binding>
  612. </MultiBinding>
  613. </TextBlock.Text>
  614. </TextBlock>
  615. <TextBlock FontSize="12" Canvas.Left="-5" Canvas.Top="214" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  616. <TextBlock.Text>
  617. <MultiBinding StringFormat="{}{0}:{1}">
  618. <Binding Path="MFC2Data.DisplayName"></Binding>
  619. <Binding Path="MFC2Data.Scale"></Binding>
  620. </MultiBinding>
  621. </TextBlock.Text>
  622. </TextBlock>
  623. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="269" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  624. <TextBlock.Text>
  625. <MultiBinding StringFormat="{}{0}:{1}">
  626. <Binding Path="MFC3Data.DisplayName"></Binding>
  627. <Binding Path="MFC3Data.Scale"></Binding>
  628. </MultiBinding>
  629. </TextBlock.Text>
  630. </TextBlock>
  631. <TextBlock FontSize="12" Canvas.Left="-5" Canvas.Top="325" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  632. <TextBlock.Text>
  633. <MultiBinding StringFormat="{}{0}:{1}">
  634. <Binding Path="MFC4Data.DisplayName"></Binding>
  635. <Binding Path="MFC4Data.Scale"></Binding>
  636. </MultiBinding>
  637. </TextBlock.Text>
  638. </TextBlock>
  639. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="367" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  640. <TextBlock.Text>
  641. <MultiBinding StringFormat="{}{0}:{1}">
  642. <Binding Path="MFC5Data.DisplayName"></Binding>
  643. <Binding Path="MFC5Data.Scale"></Binding>
  644. </MultiBinding>
  645. </TextBlock.Text>
  646. </TextBlock>
  647. <TextBlock FontSize="12" Canvas.Left="-5" Canvas.Top="413" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  648. <TextBlock.Text>
  649. <MultiBinding StringFormat="{}{0}:{1}">
  650. <Binding Path="MFC6Data.DisplayName"></Binding>
  651. <Binding Path="MFC6Data.Scale"></Binding>
  652. </MultiBinding>
  653. </TextBlock.Text>
  654. </TextBlock>
  655. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="455" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  656. <TextBlock.Text>
  657. <MultiBinding StringFormat="{}{0}:{1}">
  658. <Binding Path="MFC7Data.DisplayName"></Binding>
  659. <Binding Path="MFC7Data.Scale"></Binding>
  660. </MultiBinding>
  661. </TextBlock.Text>
  662. </TextBlock>
  663. <TextBlock FontSize="12" Canvas.Left="-5" Canvas.Top="496" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  664. <TextBlock.Text>
  665. <MultiBinding StringFormat="{}{0}:{1}">
  666. <Binding Path="MFC8Data.DisplayName"></Binding>
  667. <Binding Path="MFC8Data.Scale"></Binding>
  668. </MultiBinding>
  669. </TextBlock.Text>
  670. </TextBlock>
  671. <TextBlock Visibility="{Binding Valve9Visible,Converter={StaticResource BoolToVisibility2}}" FontSize="12" Canvas.Left="-5" Canvas.Top="539" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  672. <TextBlock.Text>
  673. <MultiBinding StringFormat="{}{0}:{1}">
  674. <Binding Path="MFC9Data.DisplayName"></Binding>
  675. <Binding Path="MFC9Data.Scale"></Binding>
  676. </MultiBinding>
  677. </TextBlock.Text>
  678. </TextBlock>
  679. <TextBlock Visibility="{Binding Valve10Visible,Converter={StaticResource BoolToVisibility2}}" FontSize="12" Canvas.Left="-5" Canvas.Top="584" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  680. <TextBlock.Text>
  681. <MultiBinding StringFormat="{}{0}:{1}">
  682. <Binding Path="MFC10Data.DisplayName"></Binding>
  683. <Binding Path="MFC10Data.Scale"></Binding>
  684. </MultiBinding>
  685. </TextBlock.Text>
  686. </TextBlock>
  687. <TextBlock Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" FontSize="12" Canvas.Left="-5" Canvas.Top="631" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  688. <TextBlock.Text>
  689. <MultiBinding StringFormat="{}{0}:{1}">
  690. <Binding Path="MFC11Data.DisplayName"></Binding>
  691. <Binding Path="MFC11Data.Scale"></Binding>
  692. </MultiBinding>
  693. </TextBlock.Text>
  694. </TextBlock>
  695. <TextBlock Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" FontSize="12" Canvas.Left="-5" Canvas.Top="676" Block.TextAlignment="Right" Width="85" TextAlignment="Right" Panel.ZIndex="4">
  696. <TextBlock.Text>
  697. <MultiBinding StringFormat="{}{0}:{1}">
  698. <Binding Path="MFC12Data.DisplayName"></Binding>
  699. <Binding Path="MFC12Data.Scale"></Binding>
  700. </MultiBinding>
  701. </TextBlock.Text>
  702. </TextBlock>
  703. <!--<Border Background="#b1d2f2" Width="24" Height="570" Canvas.Top="150" Canvas.Left="60" Panel.ZIndex="2" HorizontalAlignment="Center" VerticalAlignment="Top">
  704. </Border>-->
  705. </Canvas>
  706. <Canvas Canvas.Left="600" Canvas.Top="60">
  707. <Ellipse Width="20" Height="20" Fill="{Binding GasIsFlowing,Converter={StaticResource boolToColor}}" Canvas.Left="10" Canvas.Top="-25" Stroke="Silver" StrokeThickness="2"/>
  708. <Button Width="100" Content="Gas ON/OFF" Canvas.Left="40" Canvas.Top="-25" Style="{StaticResource SysBtnStyle}" Command="{Binding GasCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  709. <Grid Width="380" Height="500" Background="White" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="#afb4db">
  710. <Grid.RowDefinitions>
  711. <RowDefinition Height="40"/>
  712. <RowDefinition/>
  713. <RowDefinition/>
  714. <RowDefinition/>
  715. <RowDefinition/>
  716. <RowDefinition/>
  717. <RowDefinition/>
  718. <RowDefinition/>
  719. <RowDefinition/>
  720. <RowDefinition/>
  721. <RowDefinition/>
  722. <RowDefinition/>
  723. <RowDefinition/>
  724. <RowDefinition/>
  725. <RowDefinition/>
  726. <RowDefinition/>
  727. <RowDefinition/>
  728. <RowDefinition/>
  729. <RowDefinition/>
  730. <RowDefinition/>
  731. <RowDefinition/>
  732. <RowDefinition/>
  733. <RowDefinition />
  734. <RowDefinition/>
  735. <RowDefinition/>
  736. <RowDefinition Height="0"/>
  737. </Grid.RowDefinitions>
  738. <Grid.ColumnDefinitions>
  739. <ColumnDefinition Width="3*"/>
  740. <ColumnDefinition Width="2*"/>
  741. </Grid.ColumnDefinitions>
  742. <TextBlock Grid.Row="0" Grid.ColumnSpan="2" Text="Leak Check Setting" FontSize="22" Padding="90,5,0,0" Background="#6A82AD"/>
  743. <TextBlock Grid.Row="1" Text="Pumping Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  744. <TextBlock Grid.Row="2" Text="Leak Check Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  745. <TextBlock Grid.Row="3" Text="{Binding PressureType, StringFormat=Leak Rate Limit({0}/min)}" FontSize="15" VerticalAlignment="Center" Padding="10" />
  746. <TextBlock Grid.Row="4" Text="Leak Check Mode" FontSize="15" VerticalAlignment="Center" Padding="10" />
  747. <TextBlock Grid.Row="5" Text="Select All" FontSize="15" VerticalAlignment="Center" Padding="10" />
  748. <TextBlock Grid.Row="6" Text="Vent N2" FontSize="15" VerticalAlignment="Center" Padding="10" />
  749. <TextBlock Grid.Row="7" Text="MfcGas1" FontSize="15" VerticalAlignment="Center" Padding="10" />
  750. <TextBlock Grid.Row="8" Text="MfcGas2" FontSize="15" VerticalAlignment="Center" Padding="10" />
  751. <TextBlock Grid.Row="9" Text="MfcGas3" FontSize="15" VerticalAlignment="Center" Padding="10" />
  752. <TextBlock Grid.Row="10" Text="MfcGas4" FontSize="15" VerticalAlignment="Center" Padding="10" />
  753. <TextBlock Grid.Row="11" Text="MfcGas5" FontSize="15" VerticalAlignment="Center" Padding="10" />
  754. <TextBlock Grid.Row="12" Text="MfcGas6" FontSize="15" VerticalAlignment="Center" Padding="10" />
  755. <TextBlock Grid.Row="13" Text="MfcGas7" FontSize="15" VerticalAlignment="Center" Padding="10" />
  756. <TextBlock Grid.Row="14" Text="MfcGas8" FontSize="15" VerticalAlignment="Center" Padding="10" />
  757. <TextBlock Grid.Row="15" Text="MfcGas9" FontSize="15" VerticalAlignment="Center" Padding="10" />
  758. <TextBlock Grid.Row="16" Text="MfcGas10" FontSize="15" VerticalAlignment="Center" Padding="10" />
  759. <TextBlock Grid.Row="17" Visibility="{Binding Valve11Visible,Converter={StaticResource BoolToVisibility2}}" Text="MfcGas11" FontSize="15" VerticalAlignment="Center" Padding="10" />
  760. <TextBlock Grid.Row="18" Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Text="MfcGas12" FontSize="15" VerticalAlignment="Center" Padding="10" />
  761. <TextBlock Grid.Row="19" Text="State" FontSize="15" VerticalAlignment="Center" Padding="10" />
  762. <TextBlock Grid.Row="20" Text="Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  763. <TextBox Grid.Row="1" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding VentTime,UpdateSourceTrigger=PropertyChanged}"/>
  764. <TextBox Grid.Row="2" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding CheckTime,UpdateSourceTrigger=PropertyChanged}"/>
  765. <TextBox Grid.Row="3" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding LeakRateUpperLimit,UpdateSourceTrigger=PropertyChanged}"/>
  766. <ComboBox Grid.Row="4" Grid.Column="1" BorderBrush="Transparent" Margin="0" ItemsSource="{Binding LeakCheckMode}" SelectedIndex="{Binding LeakCheckModeSelectedIndex}" Style="{StaticResource customeComboBoxStyle}" BorderThickness="0"/>
  767. <CheckBox Grid.Row="5" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}">
  768. <CheckBox.IsChecked>
  769. <MultiBinding Converter="{StaticResource AllNoneCheckboxConverter}">
  770. <Binding ElementName="SEn2CheckBox" Path="IsChecked"/>
  771. <Binding ElementName="SEgas1CheckBox" Path="IsChecked"/>
  772. <Binding ElementName="SEgas2CheckBox" Path="IsChecked"/>
  773. <Binding ElementName="SEgas3CheckBox" Path="IsChecked"/>
  774. <Binding ElementName="SEgas4CheckBox" Path="IsChecked"/>
  775. <Binding ElementName="SEgas5CheckBox" Path="IsChecked"/>
  776. <Binding ElementName="SEgas6CheckBox" Path="IsChecked"/>
  777. <Binding ElementName="SEgas7CheckBox" Path="IsChecked"/>
  778. <Binding ElementName="SEgas8CheckBox" Path="IsChecked"/>
  779. <Binding ElementName="SEgas9CheckBox" Path="IsChecked"/>
  780. <Binding ElementName="SEgas10CheckBox" Path="IsChecked"/>
  781. <!--<Binding ElementName="SEgas11CheckBox" Path="IsChecked"/>
  782. <Binding ElementName="SEgas12CheckBox" Path="IsChecked"/>-->
  783. </MultiBinding>
  784. </CheckBox.IsChecked>
  785. </CheckBox>
  786. <CheckBox x:Name="SEn2CheckBox" Grid.Row="6" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[0]}" />
  787. <CheckBox x:Name="SEgas1CheckBox" Grid.Row="7" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[1]}"/>
  788. <CheckBox x:Name="SEgas2CheckBox" Grid.Row="8" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[2]}"/>
  789. <CheckBox x:Name="SEgas3CheckBox" Grid.Row="9" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[3]}"/>
  790. <CheckBox x:Name="SEgas4CheckBox" Grid.Row="10" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[4]}"/>
  791. <CheckBox x:Name="SEgas5CheckBox" Grid.Row="11" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[5]}"/>
  792. <CheckBox x:Name="SEgas6CheckBox" Grid.Row="12" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[6]}"/>
  793. <CheckBox x:Name="SEgas7CheckBox" Grid.Row="13" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[7]}"/>
  794. <CheckBox x:Name="SEgas8CheckBox" Grid.Row="14" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[8]}"/>
  795. <CheckBox x:Name="SEgas9CheckBox" Grid.Row="15" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[9]}"/>
  796. <CheckBox x:Name="SEgas10CheckBox" Grid.Row="16" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[10]}"/>
  797. <CheckBox x:Name="SEgas11CheckBox" Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Grid.Row="17" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[11]}"/>
  798. <CheckBox x:Name="SEgas12CheckBox" Visibility="{Binding Valve12Visible,Converter={StaticResource BoolToVisibility2}}" Grid.Row="18" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[12]}"/>
  799. <TextBlock Grid.Row="19" Grid.Column="1" Text="{Binding CurrentStep}" Padding="2,5,0,0"/>
  800. <TextBlock Grid.Row="20" Grid.Column="1" Text="{Binding StepTime, StringFormat=hh\\:mm\\:ss}" Padding="2,5,0,0"/>
  801. <!--<TextBlock Grid.Row="17" Grid.Column="1"/>-->
  802. </Grid>
  803. <customControls:PathButton Foreground="White" Content="Leak Check" Width="130" Height="30" Canvas.Left="400" Canvas.Top="20" Command="{Binding CheckCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  804. <customControls:PathButton Foreground="White" Content="Pump Purge" Width="130" Height="30" Canvas.Left="400" Canvas.Top="70" Command="{Binding GasPurgeCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  805. <customControls:PathButton Foreground="White" Content="Abort" Width="130" Height="30" Canvas.Left="400" Canvas.Top="170" Command="{Binding AbortCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  806. <customControls:PathButton Foreground="White" Content="Pump Down" Width="130" Height="30" Canvas.Left="400" Canvas.Top="120" Command="{Binding AbortCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  807. <TextBlock Canvas.Left="80" Canvas.Top="460" Text="Leak Check Result" FontSize="15" FontWeight="Bold"/>
  808. <Button FontSize="15" Foreground="White" FontWeight="Bold" Content="Export" Width="100" Height="30" Canvas.Left="900" Canvas.Top="440" Command="{Binding ExportCommand}"/>
  809. <Button FontSize="15" Foreground="White" FontWeight="Bold" Content="Delete" Width="100" Height="30" Canvas.Left="1020" Canvas.Top="440" />
  810. </Canvas>
  811. </Canvas>
  812. <Canvas Visibility="{Binding GasIs8,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource bool2VisibilityConverter}}" Canvas.Top="-50">
  813. <ctrls:Pipe2 Canvas.Left="490" Canvas.Top="558" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="90" />
  814. <!--N2-->
  815. <ctrls:FlowPipe Name="N2Pipe2" Height="8" Width="76" Canvas.Left="255" Canvas.Top="120" IsFlowing="{Binding PVN22ValveIsOpen}">
  816. <!--<ctrls:FlowPipe.IsFlowing>
  817. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter}">
  818. <Binding Path="PVN22ValveIsOpen"/>
  819. <Binding Path="N2ValveIsOpen"/>
  820. </MultiBinding>
  821. </ctrls:FlowPipe.IsFlowing>-->
  822. </ctrls:FlowPipe>
  823. <ctrls:FlowPipe Height="8" Width="154" Canvas.Left="330" Canvas.Top="120" IsFlowing="{Binding N2ValveIsOpen}">
  824. <!--<ctrls:FlowPipe.IsFlowing>
  825. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter}">
  826. <Binding Path="PVN22ValveIsOpen"/>
  827. <Binding Path="N2ValveIsOpen"/>
  828. </MultiBinding>
  829. </ctrls:FlowPipe.IsFlowing>-->
  830. </ctrls:FlowPipe>
  831. <TextBlock Text="N2" Canvas.Left="440" Canvas.Top="95"/>
  832. <customControls:CommonValveControl Status="{Binding N2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="114" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="10" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  833. <ctrls:FlowPipe x:Name="N2Pipe1" Height="8" Width="193" Canvas.Left="64" Canvas.Top="120" IsFlowing="{Binding PVN22ValveIsOpen}">
  834. <!--<ctrls:FlowPipe.IsFlowing>
  835. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter}">
  836. <Binding Path="PVN22ValveIsOpen"/>
  837. <Binding Path="N2ValveIsOpen"/>
  838. </MultiBinding>
  839. </ctrls:FlowPipe.IsFlowing>-->
  840. </ctrls:FlowPipe>
  841. <TextBlock Text="VN22" Canvas.Left="282" Canvas.Top="95"/>
  842. <customControls:CommonValveControl Status="{Binding PVN22ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="288" Canvas.Top="114" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="1" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  843. <ctrls:FlowPipe Height="8" Width="309" Canvas.Left="176" Canvas.Top="230" IsFlowing="{Binding MFC1ValveIsOpen}"/>
  844. <TextBlock Text="V1" Canvas.Left="438" Canvas.Top="208"/>
  845. <customControls:CommonValveControl Status="{Binding MFC1ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="224" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="11" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  846. <ctrls:FlowPipe Height="8" Width="114" Canvas.Left="64" Canvas.Top="230" IsFlowing="{Binding PV11ValveIsOpen}"/>
  847. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="266" IsFlowing="{Binding PV12ValveIsOpen}"/>
  848. <!--<ctrls:Pipe2 Canvas.Left="214" Canvas.Top="274" RotateTransformValue="-180"/>-->
  849. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="178" Canvas.Top="236" RotateTransformValue="90" IsFlowing="{Binding PV12ValveIsOpen}"/>
  850. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="274" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-180" />
  851. <ctrls:Pipe4 Canvas.Left="241" Canvas.Top="225" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  852. <ctrls:FlowPipe Height="8" Width="55" Canvas.Left="257" Canvas.Top="126" RotateTransformValue="90" IsReverse="True">
  853. <ctrls:FlowPipe.IsFlowing>
  854. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  855. <Binding Path="PV12ValveIsOpen"/>
  856. <Binding Path="PV22ValveIsOpen"/>
  857. <Binding Path="PV32ValveIsOpen"/>
  858. <Binding Path="PV42ValveIsOpen"/>
  859. </MultiBinding>
  860. </ctrls:FlowPipe.IsFlowing>
  861. </ctrls:FlowPipe>
  862. <ctrls:FlowPipe Height="8" Width="190" Canvas.Left="64" Canvas.Top="180" IsFlowing="{Binding N2Purge2ValveIsOpen}" IsReverse="True">
  863. </ctrls:FlowPipe>
  864. <customControls:CommonValveControl Status="{Binding N2Purge2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="174" Tag="58" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  865. <TextBlock Text="To Dry Pump" Canvas.Top="155" FontSize="14"/>
  866. <Image Canvas.Left="40" Canvas.Top="197" Width="40" Height="25" Source="Pack://application:,,,/Venus_Themes;Component/Resources/Arrow.png" Stretch="Uniform">
  867. <Image.RenderTransform>
  868. <RotateTransform Angle="180"/>
  869. </Image.RenderTransform>
  870. </Image>
  871. <ctrls:FlowPipe Height="8" Width="46" Canvas.Left="257" Canvas.Top="180" RotateTransformValue="90" IsReverse="True">
  872. <ctrls:FlowPipe.IsFlowing>
  873. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  874. <Binding Path="PV12ValveIsOpen"/>
  875. <Binding Path="PV22ValveIsOpen"/>
  876. <Binding Path="PV32ValveIsOpen"/>
  877. <Binding Path="PV42ValveIsOpen"/>
  878. </MultiBinding>
  879. </ctrls:FlowPipe.IsFlowing>
  880. </ctrls:FlowPipe>
  881. <ctrls:FlowPipe Height="8" Width="28" Canvas.Left="257" Canvas.Top="242" RotateTransformValue="90" IsReverse="True">
  882. <ctrls:FlowPipe.IsFlowing>
  883. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  884. <Binding Path="PV12ValveIsOpen"/>
  885. <Binding Path="PV22ValveIsOpen"/>
  886. <Binding Path="PV32ValveIsOpen"/>
  887. <Binding Path="PV42ValveIsOpen"/>
  888. </MultiBinding>
  889. </ctrls:FlowPipe.IsFlowing>
  890. </ctrls:FlowPipe>
  891. <!--SF6-->
  892. <ctrls:FlowPipe Height="8" Width="311" Canvas.Left="174" Canvas.Top="286" IsFlowing="{Binding MFC2ValveIsOpen}"/>
  893. <TextBlock Text="V2" Canvas.Left="438" Canvas.Top="264"/>
  894. <customControls:CommonValveControl Status="{Binding MFC2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="280" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="12" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  895. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="286" IsFlowing="{Binding PV21ValveIsOpen}"/>
  896. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="322" IsFlowing="{Binding PV22ValveIsOpen}"/>
  897. <ctrls:FlowPipe Height="8" Width="32" Canvas.Left="178" Canvas.Top="290" RotateTransformValue="90" IsFlowing="{Binding PV22ValveIsOpen}"/>
  898. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="330" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-180" />
  899. <ctrls:Pipe4 Canvas.Left="241" Canvas.Top="281" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  900. <ctrls:FlowPipe Height="8" Width="15" Canvas.Left="257" Canvas.Top="270" RotateTransformValue="90" IsReverse="True" >
  901. <ctrls:FlowPipe.IsFlowing>
  902. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  903. <Binding Path="PV22ValveIsOpen"/>
  904. <Binding Path="PV32ValveIsOpen"/>
  905. <Binding Path="PV42ValveIsOpen"/>
  906. </MultiBinding>
  907. </ctrls:FlowPipe.IsFlowing>
  908. </ctrls:FlowPipe>
  909. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="257" Canvas.Top="296" RotateTransformValue="90" IsReverse="True" >
  910. <ctrls:FlowPipe.IsFlowing>
  911. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  912. <Binding Path="PV22ValveIsOpen"/>
  913. <Binding Path="PV32ValveIsOpen"/>
  914. <Binding Path="PV42ValveIsOpen"/>
  915. </MultiBinding>
  916. </ctrls:FlowPipe.IsFlowing>
  917. </ctrls:FlowPipe>
  918. <!--Gas3-->
  919. <ctrls:FlowPipe Height="8" Width="311" Canvas.Left="174" Canvas.Top="342" IsFlowing="{Binding MFC3ValveIsOpen}"/>
  920. <TextBlock Text="V3" Canvas.Left="438" Canvas.Top="320"/>
  921. <customControls:CommonValveControl Status="{Binding MFC3ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="336" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="13" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  922. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="342" IsFlowing="{Binding PV31ValveIsOpen}"/>
  923. <ctrls:FlowPipe Height="8" Width="80" Canvas.Left="177" Canvas.Top="378" IsFlowing="{Binding PV32ValveIsOpen}"/>
  924. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="178" Canvas.Top="348" RotateTransformValue="90" IsFlowing="{Binding PV32ValveIsOpen}"/>
  925. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="386" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-180" />
  926. <ctrls:Pipe4 Canvas.Left="241" Canvas.Top="337" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  927. <ctrls:FlowPipe Height="8" Width="17" Canvas.Left="257" Canvas.Top="324" RotateTransformValue="90" IsReverse="True" >
  928. <ctrls:FlowPipe.IsFlowing>
  929. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  930. <Binding Path="PV32ValveIsOpen"/>
  931. <Binding Path="PV42ValveIsOpen"/>
  932. </MultiBinding>
  933. </ctrls:FlowPipe.IsFlowing>
  934. </ctrls:FlowPipe>
  935. <ctrls:FlowPipe Height="8" Width="28" Canvas.Left="257" Canvas.Top="354" RotateTransformValue="90" IsReverse="True" >
  936. <ctrls:FlowPipe.IsFlowing>
  937. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  938. <Binding Path="PV32ValveIsOpen"/>
  939. <Binding Path="PV42ValveIsOpen"/>
  940. </MultiBinding>
  941. </ctrls:FlowPipe.IsFlowing>
  942. </ctrls:FlowPipe>
  943. <!--Gas4-->
  944. <ctrls:FlowPipe Height="8" Width="112" Canvas.Left="64" Canvas.Top="396" IsFlowing="{Binding PV41ValveIsOpen}"/>
  945. <ctrls:FlowPipe Height="8" Width="76" Canvas.Left="175" Canvas.Top="428" IsFlowing="{Binding PV42ValveIsOpen}"/>
  946. <ctrls:FlowPipe Height="8" Width="311" Canvas.Left="174" Canvas.Top="396" IsFlowing="{Binding MFC4ValveIsOpen}"/>
  947. <TextBlock Text="V4" Canvas.Left="438" Canvas.Top="374"/>
  948. <customControls:CommonValveControl Status="{Binding MFC4ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="390" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="14" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  949. <ctrls:Pipe4 Canvas.Left="241" Canvas.Top="392" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  950. <ctrls:FlowPipe Height="8" Width="15" Canvas.Left="257" Canvas.Top="380" RotateTransformValue="90" IsReverse="True">
  951. <ctrls:FlowPipe.IsFlowing>
  952. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  953. <Binding Path="PV42ValveIsOpen"/>
  954. </MultiBinding>
  955. </ctrls:FlowPipe.IsFlowing>
  956. </ctrls:FlowPipe>
  957. <ctrls:FlowPipe Height="8" Width="15" Canvas.Left="257" Canvas.Top="408" RotateTransformValue="90" IsReverse="True">
  958. <ctrls:FlowPipe.IsFlowing>
  959. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  960. <Binding Path="PV42ValveIsOpen"/>
  961. </MultiBinding>
  962. </ctrls:FlowPipe.IsFlowing>
  963. </ctrls:FlowPipe>
  964. <ctrls:Pipe2 Canvas.Left="257" Canvas.Top="423" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="90" />
  965. <ctrls:FlowPipe Height="8" Width="30" Canvas.Left="178" Canvas.Top="401" RotateTransformValue="90" IsFlowing="{Binding PV42ValveIsOpen}"/>
  966. <ctrls:Pipe2 Canvas.Left="183" Canvas.Top="436" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-180" />
  967. <!--Gas5-->
  968. <ctrls:FlowPipe Height="8" Width="421" Canvas.Left="64" Canvas.Top="452" IsFlowing="{Binding MFC5ValveIsOpen}"/>
  969. <TextBlock Text="V5" Canvas.Left="438" Canvas.Top="430"/>
  970. <customControls:CommonValveControl Status="{Binding MFC5ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="446" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="15" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  971. <!--O2-->
  972. <ctrls:FlowPipe Height="8" Width="422" Canvas.Left="65" Canvas.Top="507" IsFlowing="{Binding MFC6ValveIsOpen}"/>
  973. <TextBlock Text="V6" Canvas.Left="438" Canvas.Top="485"/>
  974. <customControls:CommonValveControl Status="{Binding MFC6ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="501" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="16" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  975. <!--Gas7-->
  976. <ctrls:FlowPipe Height="8" Width="418" Canvas.Left="65" Canvas.Top="563" IsFlowing="{Binding MFC7ValveIsOpen}"/>
  977. <TextBlock Text="V7" Canvas.Left="438" Canvas.Top="541"/>
  978. <customControls:CommonValveControl Status="{Binding MFC7ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="557" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="17" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  979. <!--Gas8-->
  980. <ctrls:FlowPipe Height="8" Width="448" Canvas.Left="68" Canvas.Top="620" IsFlowing="{Binding MFC8ValveIsOpen}"/>
  981. <ctrls:FlowPipe Height="8" Width="460" Canvas.Left="520" Canvas.Top="165" RotateTransformValue="90" IsReverse="True" IsFlowing="{Binding MFC8ValveIsOpen}"/>
  982. <ctrls:FlowPipe Height="8" Width="298" Canvas.Left="515" Canvas.Top="160" IsFlowing="{Binding O2ValveIsOpen}">
  983. </ctrls:FlowPipe>
  984. <ctrls:FlowPipe Height="8" Width="36" Canvas.Left="815" Canvas.Top="125" RotateTransformValue="90" IsReverse="True" IsFlowing="{Binding O2ValveIsOpen}" Panel.ZIndex="100">
  985. </ctrls:FlowPipe>
  986. <ctrls:Pipe2 Canvas.Left="520" Canvas.Top="615" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="90" />
  987. <ctrls:Pipe2 Canvas.Left="512" Canvas.Top="173" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-90" />
  988. <ctrls:Pipe2 Canvas.Left="815" Canvas.Top="155" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="90" />
  989. <TextBlock Text="V8" Canvas.Left="438" Canvas.Top="598"/>
  990. <customControls:CommonValveControl Status="{Binding MFC8ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="436" Canvas.Top="614" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="18" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  991. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="114" Fill="{Binding MFCN2Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  992. <!--<Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="174" Fill="{Binding MFCN2Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>-->
  993. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="224" Fill="{Binding MFC1Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  994. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="280" Fill="{Binding MFC2Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  995. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="336" Fill="{Binding MFC3Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  996. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="390" Fill="{Binding MFC4Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  997. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="446" Fill="{Binding MFC5Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  998. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="501" Fill="{Binding MFC6Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  999. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="557" Fill="{Binding MFC7Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  1000. <Ellipse Width="20" Height="20" Canvas.Left="90" Canvas.Top="614" Fill="{Binding MFC8Data.IsWarning,Converter={StaticResource boolToColor4}}" Stroke="Silver" StrokeThickness="2" ToolTip="Pressure Alarm"></Ellipse>
  1001. <!--与chamber上方连接的管道-->
  1002. <ctrls:FlowPipe Height="8" Width="180" Canvas.Left="482" Canvas.Top="120">
  1003. <ctrls:FlowPipe.IsFlowing>
  1004. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter5}">
  1005. <Binding Path="GasFinalValveIsOpen"/>
  1006. <Binding Path="PurgeValveIsOpen"/>
  1007. <Binding Path="N2ValveIsOpen"/>
  1008. <Binding Path="PV11ValveIsOpen"/>
  1009. <Binding Path="PV21ValveIsOpen"/>
  1010. <Binding Path="PV31ValveIsOpen"/>
  1011. <Binding Path="PV41ValveIsOpen"/>
  1012. <Binding Path="MFC5ValveIsOpen"/>
  1013. <Binding Path="MFC6ValveIsOpen"/>
  1014. <Binding Path="MFC7ValveIsOpen"/>
  1015. </MultiBinding>
  1016. </ctrls:FlowPipe.IsFlowing>
  1017. </ctrls:FlowPipe>
  1018. <ctrls:FlowPipe Height="8" Width="154" Canvas.Left="660" Canvas.Top="120">
  1019. <ctrls:FlowPipe.IsFlowing>
  1020. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter4}">
  1021. <Binding Path="GasFinalValveIsOpen"/>
  1022. <Binding Path="N2ValveIsOpen"/>
  1023. <Binding Path="PV11ValveIsOpen"/>
  1024. <Binding Path="PV21ValveIsOpen"/>
  1025. <Binding Path="PV31ValveIsOpen"/>
  1026. <Binding Path="PV41ValveIsOpen"/>
  1027. <Binding Path="MFC5ValveIsOpen"/>
  1028. <Binding Path="MFC6ValveIsOpen"/>
  1029. <Binding Path="MFC7ValveIsOpen"/>
  1030. </MultiBinding>
  1031. </ctrls:FlowPipe.IsFlowing>
  1032. </ctrls:FlowPipe>
  1033. <ctrls:FlowPipe Height="8" Width="180" Canvas.Left="812" Canvas.Top="120">
  1034. <ctrls:FlowPipe.IsFlowing>
  1035. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1036. <Binding Path="GasFinalValveIsOpen"/>
  1037. <Binding Path="PurgeValveIsOpen"/>
  1038. <Binding Path="N2ValveIsOpen"/>
  1039. <Binding Path="PV11ValveIsOpen"/>
  1040. <Binding Path="PV21ValveIsOpen"/>
  1041. <Binding Path="PV31ValveIsOpen"/>
  1042. <Binding Path="PV41ValveIsOpen"/>
  1043. <Binding Path="MFC5ValveIsOpen"/>
  1044. <Binding Path="MFC6ValveIsOpen"/>
  1045. <Binding Path="MFC7ValveIsOpen"/>
  1046. <Binding Path="MFC8ValveIsOpen"/>
  1047. </MultiBinding>
  1048. </ctrls:FlowPipe.IsFlowing>
  1049. </ctrls:FlowPipe>
  1050. <ctrls:FlowPipe Height="8" Width="474" Canvas.Left="332" Canvas.Top="80" IsFlowing="{Binding PurgeValveIsOpen}">
  1051. <!--<ctrls:FlowPipe.IsFlowing>
  1052. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter4}">
  1053. <Binding Path="PurgeValveIsOpen"/>
  1054. -->
  1055. <!--<Binding Path="N2ValveIsOpen"/>-->
  1056. <!--
  1057. <Binding Path="PV11ValveIsOpen"/>
  1058. <Binding Path="PV21ValveIsOpen"/>
  1059. <Binding Path="PV31ValveIsOpen"/>
  1060. <Binding Path="PV41ValveIsOpen"/>
  1061. <Binding Path="MFC5ValveIsOpen"/>
  1062. <Binding Path="MFC6ValveIsOpen"/>
  1063. </MultiBinding>
  1064. </ctrls:FlowPipe.IsFlowing>-->
  1065. </ctrls:FlowPipe>
  1066. <ctrls:FlowPipe Height="8" Width="36" Canvas.Left="815" Canvas.Top="85" RotateTransformValue="90" IsReverse="False" IsFlowing="{Binding PurgeValveIsOpen}">
  1067. <!--<ctrls:FlowPipe.IsFlowing>
  1068. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter4}">
  1069. <Binding Path="PurgeValveIsOpen"/>
  1070. -->
  1071. <!--<Binding Path="N2ValveIsOpen"/>-->
  1072. <!--
  1073. <Binding Path="PV11ValveIsOpen"/>
  1074. <Binding Path="PV21ValveIsOpen"/>
  1075. <Binding Path="PV31ValveIsOpen"/>
  1076. <Binding Path="PV41ValveIsOpen"/>
  1077. <Binding Path="MFC5ValveIsOpen"/>
  1078. <Binding Path="MFC6ValveIsOpen"/>
  1079. </MultiBinding>
  1080. </ctrls:FlowPipe.IsFlowing>-->
  1081. </ctrls:FlowPipe>
  1082. <ctrls:FlowPipe Height="8" Width="34" Canvas.Left="335" Canvas.Top="88" RotateTransformValue="90" IsReverse="True" IsFlowing="{Binding PurgeValveIsOpen}">
  1083. <!--<ctrls:FlowPipe.IsFlowing>
  1084. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter4}">
  1085. <Binding Path="PurgeValveIsOpen"/>
  1086. -->
  1087. <!--<Binding Path="N2ValveIsOpen"/>-->
  1088. <!--
  1089. <Binding Path="PV11ValveIsOpen"/>
  1090. <Binding Path="PV21ValveIsOpen"/>
  1091. <Binding Path="PV31ValveIsOpen"/>
  1092. <Binding Path="PV41ValveIsOpen"/>
  1093. <Binding Path="MFC5ValveIsOpen"/>
  1094. <Binding Path="MFC6ValveIsOpen"/>
  1095. </MultiBinding>
  1096. </ctrls:FlowPipe.IsFlowing>-->
  1097. </ctrls:FlowPipe>
  1098. <ctrls:Pipe2 Canvas.Left="802" Canvas.Top="80" HorizontalAlignment="Left" VerticalAlignment="Top" />
  1099. <ctrls:Pipe2 Canvas.Left="327" Canvas.Top="93" HorizontalAlignment="Left" VerticalAlignment="Top" RotateTransformValue="-90" />
  1100. <customControls:CommonValveControl Status="{Binding PurgeValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="728" Canvas.Top="74" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="54" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1101. <TextBlock Text="Purge V8" Canvas.Left="710" Canvas.Top="52" FontSize="15"/>
  1102. <TextBlock Text="Gas Final V1" Canvas.Left="700" Canvas.Top="95" FontSize="15"/>
  1103. <customControls:CommonValveControl Status="{Binding GasFinalValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="728" Canvas.Top="114" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="21" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1104. <TextBlock Text="O2 Valve V5" Canvas.Left="690" Canvas.Top="175" FontSize="15"/>
  1105. <customControls:CommonValveControl Status="{Binding O2ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="728" Canvas.Top="154" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="56" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1106. <ctrls:Pipe2 Canvas.Left="990" Canvas.Top="120" HorizontalAlignment="Left" VerticalAlignment="Top" />
  1107. <ctrls:FlowPipe Name="l8" Height="8" Width="56" Canvas.Left="490" Canvas.Top="126" RotateTransformValue="90" IsReverse="True">
  1108. <ctrls:FlowPipe.IsFlowing>
  1109. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1110. <Binding Path="MFC1ValveIsOpen"/>
  1111. <Binding Path="MFC2ValveIsOpen"/>
  1112. <Binding Path="MFC3ValveIsOpen"/>
  1113. <Binding Path="MFC4ValveIsOpen"/>
  1114. <Binding Path="MFC5ValveIsOpen"/>
  1115. <Binding Path="MFC6ValveIsOpen"/>
  1116. <Binding Path="MFC7ValveIsOpen"/>
  1117. </MultiBinding>
  1118. </ctrls:FlowPipe.IsFlowing>
  1119. </ctrls:FlowPipe>
  1120. <ctrls:FlowPipe Height="8" Width="56" Canvas.Left="490" Canvas.Top="180" RotateTransformValue="90" IsReverse="True">
  1121. <ctrls:FlowPipe.IsFlowing>
  1122. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1123. <Binding Path="MFC1ValveIsOpen"/>
  1124. <Binding Path="MFC2ValveIsOpen"/>
  1125. <Binding Path="MFC3ValveIsOpen"/>
  1126. <Binding Path="MFC4ValveIsOpen"/>
  1127. <Binding Path="MFC5ValveIsOpen"/>
  1128. <Binding Path="MFC6ValveIsOpen"/>
  1129. <Binding Path="MFC7ValveIsOpen"/>
  1130. </MultiBinding>
  1131. </ctrls:FlowPipe.IsFlowing>
  1132. </ctrls:FlowPipe>
  1133. <ctrls:FlowPipe Height="8" Width="58" Canvas.Left="490" Canvas.Top="234" RotateTransformValue="90" IsReverse="True">
  1134. <ctrls:FlowPipe.IsFlowing>
  1135. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1136. <Binding Path="MFC2ValveIsOpen"/>
  1137. <Binding Path="MFC3ValveIsOpen"/>
  1138. <Binding Path="MFC4ValveIsOpen"/>
  1139. <Binding Path="MFC5ValveIsOpen"/>
  1140. <Binding Path="MFC6ValveIsOpen"/>
  1141. <Binding Path="MFC7ValveIsOpen"/>
  1142. </MultiBinding>
  1143. </ctrls:FlowPipe.IsFlowing>
  1144. </ctrls:FlowPipe>
  1145. <ctrls:FlowPipe Height="8" Width="56" Canvas.Left="490" Canvas.Top="290" RotateTransformValue="90" IsReverse="True">
  1146. <ctrls:FlowPipe.IsFlowing>
  1147. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1148. <Binding Path="MFC3ValveIsOpen"/>
  1149. <Binding Path="MFC4ValveIsOpen"/>
  1150. <Binding Path="MFC5ValveIsOpen"/>
  1151. <Binding Path="MFC6ValveIsOpen"/>
  1152. <Binding Path="MFC7ValveIsOpen"/>
  1153. </MultiBinding>
  1154. </ctrls:FlowPipe.IsFlowing>
  1155. </ctrls:FlowPipe>
  1156. <ctrls:FlowPipe Height="8" Width="58" Canvas.Left="490" Canvas.Top="344" RotateTransformValue="90" IsReverse="True">
  1157. <ctrls:FlowPipe.IsFlowing>
  1158. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1159. <Binding Path="MFC4ValveIsOpen"/>
  1160. <Binding Path="MFC5ValveIsOpen"/>
  1161. <Binding Path="MFC6ValveIsOpen"/>
  1162. <Binding Path="MFC7ValveIsOpen"/>
  1163. </MultiBinding>
  1164. </ctrls:FlowPipe.IsFlowing>
  1165. </ctrls:FlowPipe>
  1166. <ctrls:FlowPipe Height="8" Width="58" Canvas.Left="490" Canvas.Top="400" RotateTransformValue="90" IsReverse="True">
  1167. <ctrls:FlowPipe.IsFlowing>
  1168. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1169. <Binding Path="MFC5ValveIsOpen"/>
  1170. <Binding Path="MFC6ValveIsOpen"/>
  1171. <Binding Path="MFC7ValveIsOpen"/>
  1172. </MultiBinding>
  1173. </ctrls:FlowPipe.IsFlowing>
  1174. </ctrls:FlowPipe>
  1175. <ctrls:FlowPipe Height="8" Width="54" Canvas.Left="490" Canvas.Top="458" RotateTransformValue="90" IsReverse="True">
  1176. <ctrls:FlowPipe.IsFlowing>
  1177. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1178. <Binding Path="MFC6ValveIsOpen"/>
  1179. <Binding Path="MFC7ValveIsOpen"/>
  1180. </MultiBinding>
  1181. </ctrls:FlowPipe.IsFlowing>
  1182. </ctrls:FlowPipe>
  1183. <ctrls:FlowPipe Height="8" Width="48" Canvas.Left="490" Canvas.Top="512" RotateTransformValue="90" IsReverse="True" IsFlowing="{Binding MFC7ValveIsOpen}">
  1184. </ctrls:FlowPipe>
  1185. <!--<ctrls:FlowPipe Height="8" Width="48" Canvas.Left="490" Canvas.Top="568" RotateTransformValue="90" IsReverse="True">
  1186. <ctrls:FlowPipe.IsFlowing>
  1187. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1188. <Binding Path="MFC8ValveIsOpen"/>
  1189. </MultiBinding>
  1190. </ctrls:FlowPipe.IsFlowing>
  1191. </ctrls:FlowPipe>-->
  1192. <ctrls:FlowPipe Height="8" Width="110" Canvas.Left="1003" Canvas.Top="129" RotateTransformValue="90">
  1193. <ctrls:FlowPipe.IsFlowing>
  1194. <MultiBinding Converter="{StaticResource toBoolMultiValueConverter2}">
  1195. <Binding Path="GasFinalValveIsOpen"/>
  1196. <Binding Path="PurgeValveIsOpen"/>
  1197. <Binding Path="N2ValveIsOpen"/>
  1198. <Binding Path="PV11ValveIsOpen"/>
  1199. <Binding Path="PV21ValveIsOpen"/>
  1200. <Binding Path="PV31ValveIsOpen"/>
  1201. <Binding Path="PV41ValveIsOpen"/>
  1202. <Binding Path="MFC5ValveIsOpen"/>
  1203. <Binding Path="MFC6ValveIsOpen"/>
  1204. <Binding Path="MFC7ValveIsOpen"/>
  1205. <Binding Path="MFC8ValveIsOpen"/>
  1206. </MultiBinding>
  1207. </ctrls:FlowPipe.IsFlowing>
  1208. </ctrls:FlowPipe>
  1209. <!--阀-->
  1210. <TextBlock Text="V41" Canvas.Left="128" Canvas.Top="374"/>
  1211. <customControls:CommonValveControl Status="{Binding PV41ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="390" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="8" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1212. <TextBlock Text="V31" Canvas.Left="128" Canvas.Top="320"/>
  1213. <customControls:CommonValveControl Status="{Binding PV31ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="336" Tag="6" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1214. <TextBlock Text="V21" Canvas.Left="128" Canvas.Top="266"/>
  1215. <customControls:CommonValveControl Status="{Binding PV21ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="280" Tag="4" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1216. <TextBlock Text="V11" Canvas.Left="128" Canvas.Top="208"/>
  1217. <customControls:CommonValveControl Status="{Binding PV11ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="127" Canvas.Top="224" Tag="2" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1218. <TextBlock Text="V12" Canvas.Left="200" Canvas.Top="243"/>
  1219. <customControls:CommonValveControl Status="{Binding PV12ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="259" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="3" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1220. <TextBlock Text="V22" Canvas.Left="200" Canvas.Top="300"/>
  1221. <customControls:CommonValveControl Status="{Binding PV22ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="315" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="5" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1222. <TextBlock Text="V32" Canvas.Left="200" Canvas.Top="355"/>
  1223. <customControls:CommonValveControl Status="{Binding PV32ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="371" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="7" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1224. <TextBlock Text="V42" Canvas.Left="200" Canvas.Top="405"/>
  1225. <customControls:CommonValveControl Status="{Binding PV42ValveIsOpen,Mode=TwoWay}" ValveOrientation="Horizontal" Height="20" Width="20" Canvas.Left="200" Canvas.Top="421" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="9" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1226. <TextBlock Text="VN21" Canvas.Left="200" Canvas.Top="152"/>
  1227. <customControls:CommonValveControl Status="{Binding PVN21ValveIsOpen,Mode=TwoWay}" ValveOrientation="Vertical" Height="20" Width="20" Canvas.Left="243" Canvas.Top="148" IsCanEdit="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Tag="0" Command="{Binding ControlValveCommand}" CommandParameter="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
  1228. <!--左侧管道标签-->
  1229. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC1SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="205" Canvas.Left="275" LabelValue="MFC1" ToolTip="{Binding MFC1Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC1Data.Scale}"/>
  1230. <!--<TextBox Canvas.Top="205" Canvas.Left="250" Width="100" Text="{Binding MfcGas1Setpoint,Mode=TwoWay}"/>-->
  1231. <ctrls:TextboxWithLabel Canvas.Top="205" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC1Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1232. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC2SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="260" Canvas.Left="275" LabelValue="MFC2" ToolTip="{Binding MFC2Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC2Data.Scale}"/>
  1233. <ctrls:TextboxWithLabel Canvas.Top="260" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC2Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1234. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC3SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="318" Canvas.Left="275" LabelValue="MFC3" ToolTip="{Binding MFC3Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC3Data.Scale}"/>
  1235. <ctrls:TextboxWithLabel Canvas.Top="318" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC3Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1236. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC4SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="370" Canvas.Left="275" LabelValue="MFC4" ToolTip="{Binding MFC4Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC4Data.Scale}"/>
  1237. <ctrls:TextboxWithLabel Canvas.Top="370" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC4Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1238. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC5SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="426" Canvas.Left="275" LabelValue="MFC5" ToolTip="{Binding MFC5Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC5Data.Scale}"/>
  1239. <ctrls:TextboxWithLabel Canvas.Top="426" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC5Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1240. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC6SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="482" Canvas.Left="275" LabelValue="MFC6" ToolTip="{Binding MFC6Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC6Data.Scale}"/>
  1241. <ctrls:TextboxWithLabel Canvas.Top="482" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC6Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1242. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC7SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="538" Canvas.Left="275" LabelValue="MFC7" ToolTip="{Binding MFC7Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC7Data.Scale}"/>
  1243. <ctrls:TextboxWithLabel Canvas.Top="538" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC7Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1244. <ctrls:TextboxWithLabel TextBoxValue="{Binding MFC8SetPoint,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" Canvas.Top="595" Canvas.Left="275" LabelValue="MFC8" ToolTip="{Binding MFC8Data.SetPoint,StringFormat='F1'}" TextBoxColor="White" MaxValue="{Binding MFC8Data.Scale}"/>
  1245. <ctrls:TextboxWithLabel Canvas.Top="595" Canvas.Left="345" LabelValue="Flow" TextBoxValue="{Binding MFC8Data.FeedBack,StringFormat='F1'}" TextBoxColor="#E6ECF5"/>
  1246. <Ellipse Width="20" Height="20" Fill="{Binding GasIsFlowing,Converter={StaticResource boolToColor}}" Canvas.Left="560" Canvas.Top="198" Stroke="Silver" StrokeThickness="2"/>
  1247. <Button Width="100" Content="Gas ON/OFF" Canvas.Left="590" Canvas.Top="200" Command="{Binding GasCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  1248. <TextBlock FontSize="13" Text="Vent N2" Canvas.Left="10" Canvas.Top="117" Foreground="Black" Block.TextAlignment="Right" Width="50"/>
  1249. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="227" Block.TextAlignment="Right" MaxWidth="65">
  1250. <TextBlock.Text>
  1251. <MultiBinding StringFormat="{}({0}:{1})">
  1252. <Binding Path="MFC1Data.DisplayName"></Binding>
  1253. <Binding Path="MFC1Data.Scale"></Binding>
  1254. </MultiBinding>
  1255. </TextBlock.Text>
  1256. </TextBlock>
  1257. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="284" Block.TextAlignment="Right" MaxWidth="65">
  1258. <TextBlock.Text>
  1259. <MultiBinding StringFormat="{}({0}:{1})">
  1260. <Binding Path="MFC2Data.DisplayName"></Binding>
  1261. <Binding Path="MFC2Data.Scale"></Binding>
  1262. </MultiBinding>
  1263. </TextBlock.Text>
  1264. </TextBlock>
  1265. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="338" Block.TextAlignment="Right" MaxWidth="65">
  1266. <TextBlock.Text>
  1267. <MultiBinding StringFormat="{}({0}:{1})">
  1268. <Binding Path="MFC3Data.DisplayName"></Binding>
  1269. <Binding Path="MFC3Data.Scale"></Binding>
  1270. </MultiBinding>
  1271. </TextBlock.Text>
  1272. </TextBlock>
  1273. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="392" Block.TextAlignment="Right" MaxWidth="65">
  1274. <TextBlock.Text>
  1275. <MultiBinding StringFormat="{}({0}:{1})">
  1276. <Binding Path="MFC4Data.DisplayName"></Binding>
  1277. <Binding Path="MFC4Data.Scale"></Binding>
  1278. </MultiBinding>
  1279. </TextBlock.Text>
  1280. </TextBlock>
  1281. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="448" Block.TextAlignment="Right" MaxWidth="65">
  1282. <TextBlock.Text>
  1283. <MultiBinding StringFormat="{}({0}:{1})">
  1284. <Binding Path="MFC5Data.DisplayName"></Binding>
  1285. <Binding Path="MFC5Data.Scale"></Binding>
  1286. </MultiBinding>
  1287. </TextBlock.Text>
  1288. </TextBlock>
  1289. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="503" Block.TextAlignment="Right" MaxWidth="65">
  1290. <TextBlock.Text>
  1291. <MultiBinding StringFormat="{}({0}:{1})">
  1292. <Binding Path="MFC6Data.DisplayName"></Binding>
  1293. <Binding Path="MFC6Data.Scale"></Binding>
  1294. </MultiBinding>
  1295. </TextBlock.Text>
  1296. </TextBlock>
  1297. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="562" Block.TextAlignment="Right" MaxWidth="65">
  1298. <TextBlock.Text>
  1299. <MultiBinding StringFormat="{}({0}:{1})">
  1300. <Binding Path="MFC7Data.DisplayName"></Binding>
  1301. <Binding Path="MFC7Data.Scale"></Binding>
  1302. </MultiBinding>
  1303. </TextBlock.Text>
  1304. </TextBlock>
  1305. <TextBlock FontSize="13" Canvas.Left="-5" Canvas.Top="618" Block.TextAlignment="Right" MaxWidth="65">
  1306. <TextBlock.Text>
  1307. <MultiBinding StringFormat="{}({0}:{1})">
  1308. <Binding Path="MFC8Data.DisplayName"></Binding>
  1309. <Binding Path="MFC8Data.Scale"></Binding>
  1310. </MultiBinding>
  1311. </TextBlock.Text>
  1312. </TextBlock>
  1313. </Canvas >
  1314. <Canvas Visibility="{Binding GasIs8,UpdateSourceTrigger=PropertyChanged,Converter={StaticResource bool2VisibilityConverter}}" Canvas.Left="900" Canvas.Top="110">
  1315. <Grid Width="380" Height="440" Background="White" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="#E5E6E7">
  1316. <Grid.RowDefinitions>
  1317. <RowDefinition Height="40"/>
  1318. <RowDefinition/>
  1319. <RowDefinition/>
  1320. <RowDefinition/>
  1321. <RowDefinition/>
  1322. <RowDefinition/>
  1323. <RowDefinition/>
  1324. <RowDefinition/>
  1325. <RowDefinition/>
  1326. <RowDefinition/>
  1327. <RowDefinition/>
  1328. <RowDefinition/>
  1329. <RowDefinition/>
  1330. <RowDefinition/>
  1331. <RowDefinition/>
  1332. <RowDefinition/>
  1333. <RowDefinition/>
  1334. <!--<RowDefinition Height="0"/>-->
  1335. </Grid.RowDefinitions>
  1336. <Grid.ColumnDefinitions>
  1337. <ColumnDefinition Width="3*"/>
  1338. <ColumnDefinition Width="2*"/>
  1339. </Grid.ColumnDefinitions>
  1340. <TextBlock Grid.Row="0" Grid.ColumnSpan="2" Text="Leak Check Setting" FontSize="22" Padding="90,5,0,0" Background="#FFFFFF"/>
  1341. <TextBlock Grid.Row="1" Text="Pumping Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1342. <TextBlock Grid.Row="2" Text="Leak Check Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1343. <TextBlock Grid.Row="3" Text="{Binding PressureType, StringFormat=Leak Rate Limit({0}/min)}" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1344. <TextBlock Grid.Row="4" Text="Leak Check Mode" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1345. <TextBlock Grid.Row="5" Text="Select All" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1346. <TextBlock Grid.Row="6" Text="Vent N2" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1347. <TextBlock Grid.Row="7" Text="MfcGas1" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1348. <TextBlock Grid.Row="8" Text="MfcGas2" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1349. <TextBlock Grid.Row="9" Text="MfcGas3" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1350. <TextBlock Grid.Row="10" Text="MfcGas4" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1351. <TextBlock Grid.Row="11" Text="MfcGas5" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1352. <TextBlock Grid.Row="12" Text="MfcGas6" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1353. <TextBlock Grid.Row="13" Text="MfcGas7" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1354. <TextBlock Grid.Row="14" Text="MfcGas8" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1355. <TextBlock Grid.Row="15" Text="State" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1356. <TextBlock Grid.Row="16" Text="Time(s)" FontSize="15" VerticalAlignment="Center" Padding="10" />
  1357. <!--<TextBlock Grid.Row="17" Text="当前压力" FontSize="15" VerticalAlignment="Center" Padding="10" />-->
  1358. <TextBox Grid.Row="1" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding VentTime,UpdateSourceTrigger=PropertyChanged}"/>
  1359. <TextBox Grid.Row="2" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding CheckTime,UpdateSourceTrigger=PropertyChanged}"/>
  1360. <TextBox Grid.Row="3" Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" Text="{Binding LeakRateUpperLimit,UpdateSourceTrigger=PropertyChanged}"/>
  1361. <ComboBox Grid.Row="4" Grid.Column="1" BorderBrush="Transparent" Margin="0" ItemsSource="{Binding LeakCheckMode}" SelectedIndex="{Binding LeakCheckModeSelectedIndex}" Style="{StaticResource customeComboBoxStyle}" BorderThickness="0"/>
  1362. <CheckBox Grid.Row="5" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}">
  1363. <CheckBox.IsChecked>
  1364. <MultiBinding Converter="{StaticResource AllNoneCheckboxConverter}">
  1365. <Binding ElementName="n2CheckBox" Path="IsChecked"/>
  1366. <Binding ElementName="gas1CheckBox" Path="IsChecked"/>
  1367. <Binding ElementName="gas2CheckBox" Path="IsChecked"/>
  1368. <Binding ElementName="gas3CheckBox" Path="IsChecked"/>
  1369. <Binding ElementName="gas4CheckBox" Path="IsChecked"/>
  1370. <Binding ElementName="gas5CheckBox" Path="IsChecked"/>
  1371. <Binding ElementName="gas6CheckBox" Path="IsChecked"/>
  1372. <Binding ElementName="gas7CheckBox" Path="IsChecked"/>
  1373. <Binding ElementName="gas8CheckBox" Path="IsChecked"/>
  1374. </MultiBinding>
  1375. </CheckBox.IsChecked>
  1376. </CheckBox>
  1377. <CheckBox x:Name="n2CheckBox" Grid.Row="6" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[0]}" />
  1378. <CheckBox x:Name="gas1CheckBox" Grid.Row="7" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[1]}"/>
  1379. <CheckBox x:Name="gas2CheckBox" Grid.Row="8" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[2]}"/>
  1380. <CheckBox x:Name="gas3CheckBox" Grid.Row="9" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[3]}"/>
  1381. <CheckBox x:Name="gas4CheckBox" Grid.Row="10" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[4]}"/>
  1382. <CheckBox x:Name="gas5CheckBox" Grid.Row="11" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[5]}"/>
  1383. <CheckBox x:Name="gas6CheckBox" Grid.Row="12" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[6]}"/>
  1384. <CheckBox x:Name="gas7CheckBox" Grid.Row="13" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[7]}"/>
  1385. <CheckBox x:Name="gas8CheckBox" Grid.Row="14" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="{Binding LeakCheckModeSelectedIndex}" IsChecked="{Binding GasIsCheck[8]}"/>
  1386. <TextBlock Grid.Row="15" Grid.Column="1" Text="{Binding CurrentStep}" Padding="2,5,0,0"/>
  1387. <TextBlock Grid.Row="16" Grid.Column="1" Text="{Binding StepTime, StringFormat=hh\\:mm\\:ss}" Padding="2,5,0,0"/>
  1388. <!--<TextBlock Grid.Row="17" Grid.Column="1"/>-->
  1389. </Grid>
  1390. <customControls:PathButton Foreground="White" Content="Leak Check" Width="130" Height="30" Canvas.Left="400" Canvas.Top="20" Command="{Binding CheckCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  1391. <customControls:PathButton Foreground="White" Content="Gas Purge" Width="130" Height="30" Canvas.Left="400" Canvas.Top="70" Command="{Binding GasPurgeCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  1392. <customControls:PathButton Foreground="White" Content="Abort" Width="130" Height="30" Canvas.Left="400" Canvas.Top="120" Command="{Binding AbortCommand}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
  1393. <!--<TextBlock Canvas.Left="80" Canvas.Top="460" Text="Leak Check Result" FontSize="15" FontWeight="Bold"/>-->
  1394. <!--<Button FontSize="15" Foreground="White" FontWeight="Bold" Content="Export" Width="100" Height="30" Canvas.Left="900" Canvas.Top="440" Command="{Binding ExportCommand}"/>
  1395. <Button FontSize="15" Foreground="White" FontWeight="Bold" Content="Delete" Width="100" Height="30" Canvas.Left="1020" Canvas.Top="440" />-->
  1396. </Canvas>
  1397. <DataGrid Canvas.Top="590" Height="225" AutoGenerateColumns="False" BorderThickness="0.1" FontSize="12" MinRowHeight="20"
  1398. CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserResizeColumns="True" CanUserResizeRows="False" CanUserSortColumns="False"
  1399. SelectionMode="Single" SelectionUnit="FullRow" Background="#05000000" HorizontalScrollBarVisibility="Disabled"
  1400. ItemsSource="{Binding LeakCheckResultList}" SelectedItem="{Binding CurrentLeakCheckResultItem}" FontFamily="Arial,SimSun" Canvas.Left="-36">
  1401. <DataGrid.Columns>
  1402. <DataGridTextColumn Width="160" Binding="{Binding CheckDate}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1403. <DataGridTextColumn.HeaderTemplate >
  1404. <DataTemplate>
  1405. <TextBlock Text="CheckDate" />
  1406. </DataTemplate>
  1407. </DataGridTextColumn.HeaderTemplate>
  1408. </DataGridTextColumn>
  1409. <DataGridTextColumn Width="120" Binding="{Binding StartPressure}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1410. <DataGridTextColumn.HeaderTemplate >
  1411. <DataTemplate>
  1412. <TextBlock Text="BasePressure" />
  1413. </DataTemplate>
  1414. </DataGridTextColumn.HeaderTemplate>
  1415. </DataGridTextColumn>
  1416. <DataGridTextColumn Width="120" Binding="{Binding LeakRate}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1417. <DataGridTextColumn.HeaderTemplate >
  1418. <DataTemplate>
  1419. <TextBlock Text="LeakRate" />
  1420. </DataTemplate>
  1421. </DataGridTextColumn.HeaderTemplate>
  1422. </DataGridTextColumn>
  1423. <DataGridTextColumn Width="200" Binding="{Binding CheckMode}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1424. <DataGridTextColumn.HeaderTemplate >
  1425. <DataTemplate>
  1426. <TextBlock Text="CheckMode" />
  1427. </DataTemplate>
  1428. </DataGridTextColumn.HeaderTemplate>
  1429. </DataGridTextColumn>
  1430. <DataGridTextColumn Width="400" Binding="{Binding GasLines}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1431. <DataGridTextColumn.HeaderTemplate >
  1432. <DataTemplate>
  1433. <TextBlock Text="Gas Lines" />
  1434. </DataTemplate>
  1435. </DataGridTextColumn.HeaderTemplate>
  1436. </DataGridTextColumn>
  1437. <DataGridTextColumn Width="200" Binding="{Binding Result}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  1438. <DataGridTextColumn.HeaderTemplate >
  1439. <DataTemplate>
  1440. <TextBlock Text="Result" />
  1441. </DataTemplate>
  1442. </DataGridTextColumn.HeaderTemplate>
  1443. </DataGridTextColumn>
  1444. </DataGrid.Columns>
  1445. </DataGrid>
  1446. </Canvas>
  1447. </UserControl>