RecipeMFCSettingView.xaml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306
  1. <UserControl x:Class="FurnaceUI.Views.Editors.RecipeMFCSettingView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:FurnaceUI.Views.Editors" xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:cal="http://www.caliburn.org" xmlns:converter="clr-namespace:FurnaceUI.Converter"
  7. xmlns:controls="http://OpenSEMI.Ctrlib.com/presentation"
  8. mc:Ignorable="d"
  9. Height="560" Width="1000" FontFamily="Segoe" >
  10. <UserControl.Resources>
  11. <SolidColorBrush x:Key="ToggleButton_BG" Color="#FF3d8d73"/>
  12. <converter:IsSavedColorConverter x:Key="isSavedColorConverter"/>
  13. <LinearGradientBrush x:Key="ToggleButton_BG_Color" EndPoint="0,0" StartPoint="0,1">
  14. <GradientStop Color="White" Offset="0"/>
  15. <GradientStop Color="White" Offset="0.9"/>
  16. <GradientStop Color="#FFD0D0D0" Offset="1"/>
  17. </LinearGradientBrush>
  18. <SolidColorBrush x:Key="ToggleButton_BD" Color="#FF107268"/>
  19. <SolidColorBrush x:Key="ToggleButton_BD_Shadow" Color="#FF284775"/>
  20. <SolidColorBrush x:Key="ToggleButton_BG_MouseOver" Color="#FF4FCBFF"/>
  21. <SolidColorBrush x:Key="ToggleButton_BG_Press" Color="#FF5A89D4"/>
  22. <SolidColorBrush x:Key="ToggleButton_BG_Unable" Color="#FFD2D2D2"/>
  23. <SolidColorBrush x:Key="ToggleButton_BD_Unable" Color="#FFF3F3F3"/>
  24. <SolidColorBrush x:Key="ToggleButton_BD_Shadow_Unable" Color="#FF9D9D9D"/>
  25. <SolidColorBrush x:Key="ToggleButton_BG_Checked" Color="#FFb8fff8"/>
  26. <SolidColorBrush x:Key="ToggleButton_BD_Checked" Color="#FFF3F3F3"/>
  27. <SolidColorBrush x:Key="ToggleButton_BD_Shadow_Checked" Color="#FF9D9D9D"/>
  28. <SolidColorBrush x:Key="TopFrame_BG" Color="Gray"/>
  29. <SolidColorBrush x:Key="TopFrame_BG2" Color="Green"/>
  30. <Style TargetType="{x:Type ToggleButton}">
  31. <Setter Property="FocusVisualStyle" Value="{StaticResource ButtonFocusVisual}"/>
  32. <Setter Property="Background" Value="{StaticResource TopFrame_BG}"/>
  33. <Setter Property="BorderBrush" Value="Black"/>
  34. <Setter Property="BorderThickness" Value="2,2,0,0"/>
  35. <Setter Property="Foreground" Value="{DynamicResource FG_Black}"/>
  36. <Setter Property="HorizontalContentAlignment" Value="Center"/>
  37. <Setter Property="VerticalContentAlignment" Value="Center"/>
  38. <Setter Property="Padding" Value="6,3"/>
  39. <Setter Property="MinWidth" Value="40"/>
  40. <Setter Property="MinHeight" Value="20"/>
  41. <Setter Property="SnapsToDevicePixels" Value="True"/>
  42. <Setter Property="Border.CornerRadius" Value="4"/>
  43. <Setter Property="Template">
  44. <Setter.Value>
  45. <ControlTemplate TargetType="{x:Type ToggleButton}">
  46. <Border x:Name="BG" BorderThickness="{TemplateBinding BorderThickness}"
  47. SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
  48. CornerRadius="{TemplateBinding Border.CornerRadius}"
  49. BorderBrush="{TemplateBinding BorderBrush}"
  50. Background="{TemplateBinding Background}" Cursor="Hand">
  51. <Border x:Name="Inner_BD"
  52. BorderBrush="WhiteSmoke"
  53. BorderThickness="0,0,2,2" Margin="0,0,-2,-2" CornerRadius="3" Padding="5,1">
  54. <ContentPresenter x:Name="contentpresenter" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
  55. Margin="{TemplateBinding Padding}" RecognizesAccessKey="True"
  56. SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
  57. VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Cursor="Hand">
  58. </ContentPresenter>
  59. </Border>
  60. </Border>
  61. <ControlTemplate.Triggers>
  62. <Trigger Property="IsMouseOver" Value="True">
  63. <Setter TargetName="BG" Property="Background" Value="{StaticResource ToggleButton_BG_MouseOver}"/>
  64. </Trigger>
  65. <Trigger Property="IsPressed" Value="True">
  66. <Setter TargetName="BG" Property="Background" Value="{StaticResource ToggleButton_BG_Press}"/>
  67. <Setter TargetName="BG" Property="Margin" Value="1"/>
  68. <Setter Property="FontSize" Value="13"/>
  69. </Trigger>
  70. <Trigger Property="IsEnabled" Value="False">
  71. <Setter TargetName="BG" Property="Background" Value="{StaticResource ToggleButton_BG_Unable}"/>
  72. <Setter TargetName="BG" Property="BorderBrush" Value="{StaticResource ToggleButton_BD_Unable}"/>
  73. <Setter TargetName="Inner_BD" Property="BorderBrush" Value="{StaticResource ToggleButton_BD_Shadow_Unable}"/>
  74. <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
  75. </Trigger>
  76. <Trigger Property="IsChecked" Value="True">
  77. <Setter TargetName="Inner_BD" Property="Background" Value="{StaticResource TopFrame_BG2}"/>
  78. <Setter TargetName="BG" Property="Background" Value="{StaticResource TopFrame_BG}"/>
  79. <Setter Property="FontSize" Value="16"/>
  80. <Setter Property="FontWeight" Value="Bold"/>
  81. <Setter TargetName="BG" Property="BorderBrush" Value="{StaticResource ToggleButton_BD}"/>
  82. <Setter TargetName="Inner_BD" Property="BorderBrush" Value="{StaticResource ToggleButton_BD_Unable}"/>
  83. <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
  84. <Setter Property="Content" TargetName="contentpresenter" Value="Open"/>
  85. </Trigger>
  86. <Trigger Property="IsChecked" Value="False">
  87. <Setter TargetName="Inner_BD" Property="Background" Value="{StaticResource TopFrame_BG}"/>
  88. <Setter TargetName="BG" Property="BorderBrush" Value="{StaticResource ToggleButton_BD}"/>
  89. <Setter Property="FontSize" Value="23"/>
  90. <Setter Property="FontWeight" Value="Normal"/>
  91. <Setter TargetName="Inner_BD" Property="BorderBrush" Value="{StaticResource ToggleButton_BD}"/>
  92. <Setter Property="TextBlock.Foreground" TargetName="contentpresenter" Value="Black"/>
  93. <Setter Property="Content" TargetName="contentpresenter" Value="Close"/>
  94. </Trigger>
  95. </ControlTemplate.Triggers>
  96. </ControlTemplate>
  97. </Setter.Value>
  98. </Setter>
  99. </Style>
  100. <converter:IsCheckShowStringConverter x:Key="isCheckShowStringConverter"/>
  101. </UserControl.Resources>
  102. <Grid>
  103. <Grid.RowDefinitions>
  104. <RowDefinition Height="*"/>
  105. <RowDefinition Height="80"/>
  106. </Grid.RowDefinitions>
  107. <Grid Grid.Row="0" Grid.Column="0">
  108. <DataGrid x:Name="GVMFC" Grid.Row="0" Margin="10" HorizontalContentAlignment="Stretch" ItemsSource="{Binding MFCSets}" CanUserAddRows="False" AutoGenerateColumns="False">
  109. <DataGrid.Columns>
  110. <DataGridTemplateColumn Width="40">
  111. <DataGridTemplateColumn.CellTemplate>
  112. <DataTemplate>
  113. <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding No}"/>
  114. </DataTemplate>
  115. </DataGridTemplateColumn.CellTemplate>
  116. <DataGridTemplateColumn.Header>
  117. <TextBlock Text="No"></TextBlock>
  118. </DataGridTemplateColumn.Header>
  119. </DataGridTemplateColumn>
  120. <DataGridTemplateColumn Width="115">
  121. <DataGridTemplateColumn.CellTemplate>
  122. <DataTemplate>
  123. <TextBlock Width="115" Text="{Binding ControlName}" VerticalAlignment="Center" HorizontalAlignment="Center" TextBlock.TextAlignment="Center"/>
  124. </DataTemplate>
  125. </DataGridTemplateColumn.CellTemplate>
  126. <DataGridTemplateColumn.Header>
  127. <TextBlock Text="MFC Name"></TextBlock>
  128. </DataGridTemplateColumn.Header>
  129. </DataGridTemplateColumn>
  130. <DataGridTemplateColumn Width="150">
  131. <DataGridTemplateColumn.CellTemplate>
  132. <DataTemplate>
  133. <StackPanel Orientation="Horizontal">
  134. <controls:TextBoxEx Cursor="Hand" EditBoxMode="Decimal" TextSaved="{Binding SetValue.IsSaved, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Tag="Number" ChangedColor="Yellow" KeepDecimals="3" Text="{Binding SetValue.Value, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Margin="4" Width="102">
  135. <i:Interaction.Triggers>
  136. <i:EventTrigger EventName="TextChanged">
  137. <cal:ActionMessage MethodName="TextValueChanged">
  138. <cal:Parameter Value="{Binding ControlName}"></cal:Parameter>
  139. <cal:Parameter Value="$source"></cal:Parameter>
  140. <cal:Parameter Value="Value"></cal:Parameter>
  141. </cal:ActionMessage>
  142. </i:EventTrigger>
  143. </i:Interaction.Triggers>
  144. </controls:TextBoxEx>
  145. <TextBlock Text="{Binding SetUnit.Value,UpdateSourceTrigger=PropertyChanged}"/>
  146. </StackPanel>
  147. </DataTemplate>
  148. </DataGridTemplateColumn.CellTemplate>
  149. <DataGridTemplateColumn.Header>
  150. <TextBlock Text="Set"></TextBlock>
  151. </DataGridTemplateColumn.Header>
  152. </DataGridTemplateColumn>
  153. <DataGridTemplateColumn Width="160">
  154. <DataGridTemplateColumn.CellTemplate>
  155. <DataTemplate>
  156. <StackPanel Orientation="Horizontal">
  157. <controls:TextBoxEx EditBoxMode="Decimal" TextSaved="{Binding Rampng.IsSaved, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Tag="Number" ChangedColor="Yellow" Text="{Binding Rampng.Value, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" KeepDecimals="3" Margin="4" Width="82" IsEnabled="{Binding IsEnable}">
  158. <i:Interaction.Triggers>
  159. <i:EventTrigger EventName="TextChanged">
  160. <cal:ActionMessage MethodName="TextValueChanged">
  161. <cal:Parameter Value="{Binding ControlName}"></cal:Parameter>
  162. <cal:Parameter Value="$source"></cal:Parameter>
  163. <cal:Parameter Value="Rampng"></cal:Parameter>
  164. </cal:ActionMessage>
  165. </i:EventTrigger>
  166. </i:Interaction.Triggers>
  167. </controls:TextBoxEx>
  168. <Button Background="{Binding RampngUnit.IsSaved,Converter={StaticResource isSavedColorConverter}, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Content="{Binding RampngUnit.Value, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Width="55" >
  169. <i:Interaction.Triggers>
  170. <i:EventTrigger EventName="Click">
  171. <cal:ActionMessage MethodName="RampngUnitClick">
  172. <cal:Parameter Value="{Binding RampngUnit}"></cal:Parameter>
  173. <cal:Parameter Value="{Binding}"/>
  174. </cal:ActionMessage>
  175. </i:EventTrigger>
  176. </i:Interaction.Triggers>
  177. </Button>
  178. </StackPanel>
  179. </DataTemplate>
  180. </DataGridTemplateColumn.CellTemplate>
  181. <DataGridTemplateColumn.Header>
  182. <TextBlock Text="Ramprate"></TextBlock>
  183. </DataGridTemplateColumn.Header>
  184. </DataGridTemplateColumn>
  185. <DataGridTemplateColumn Width="102">
  186. <DataGridTemplateColumn.CellTemplate>
  187. <DataTemplate>
  188. <Button Background="{Binding IsCheck.IsSaved,Converter={StaticResource isSavedColorConverter}, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Content="{Binding IsCheck.Value, Converter={StaticResource isCheckShowStringConverter}, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Width="90" IsEnabled="{Binding IsEnable}">
  189. <i:Interaction.Triggers>
  190. <i:EventTrigger EventName="Click">
  191. <cal:ActionMessage MethodName="MFCButtonClickCmd">
  192. <cal:Parameter Value="{Binding ControlName}"></cal:Parameter>
  193. <cal:Parameter Value="$source"></cal:Parameter>
  194. <cal:Parameter Value="IsCheck"></cal:Parameter>
  195. </cal:ActionMessage>
  196. </i:EventTrigger>
  197. </i:Interaction.Triggers>
  198. </Button>
  199. </DataTemplate>
  200. </DataGridTemplateColumn.CellTemplate>
  201. <DataGridTemplateColumn.Header>
  202. <TextBlock Text="Check"></TextBlock>
  203. </DataGridTemplateColumn.Header>
  204. </DataGridTemplateColumn>
  205. <DataGridTemplateColumn Width="100">
  206. <DataGridTemplateColumn.CellTemplate>
  207. <DataTemplate>
  208. <controls:TextBoxEx Width="100" EditBoxMode="Decimal" TextSaved="{Binding MaxValue.IsSaved, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ChangedColor="Yellow" Text="{Binding MaxValue.Value, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" KeepDecimals="3" Tag="Number" HorizontalAlignment="Stretch" TextAlignment="Center">
  209. <i:Interaction.Triggers>
  210. <i:EventTrigger EventName="TextChanged">
  211. <cal:ActionMessage MethodName="TextValueChanged">
  212. <cal:Parameter Value="{Binding ControlName}"></cal:Parameter>
  213. <cal:Parameter Value="$source"></cal:Parameter>
  214. <cal:Parameter Value="MaxValue"></cal:Parameter>
  215. </cal:ActionMessage>
  216. </i:EventTrigger>
  217. </i:Interaction.Triggers>
  218. </controls:TextBoxEx>
  219. </DataTemplate>
  220. </DataGridTemplateColumn.CellTemplate>
  221. <DataGridTemplateColumn.Header>
  222. <TextBlock Text="High(+)"></TextBlock>
  223. </DataGridTemplateColumn.Header>
  224. </DataGridTemplateColumn>
  225. <DataGridTemplateColumn Width="100">
  226. <DataGridTemplateColumn.CellTemplate>
  227. <DataTemplate>
  228. <controls:TextBoxEx Width="100" EditBoxMode="Decimal" TextSaved="{Binding MinValue.IsSaved, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ChangedColor="Yellow" Text="{Binding MinValue.Value, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" KeepDecimals="3" Tag="Number" HorizontalAlignment="Stretch" TextAlignment="Center">
  229. <i:Interaction.Triggers>
  230. <i:EventTrigger EventName="TextChanged">
  231. <cal:ActionMessage MethodName="TextValueChanged">
  232. <cal:Parameter Value="{Binding ControlName}"></cal:Parameter>
  233. <cal:Parameter Value="$source"></cal:Parameter>
  234. <cal:Parameter Value="MinValue"></cal:Parameter>
  235. </cal:ActionMessage>
  236. </i:EventTrigger>
  237. </i:Interaction.Triggers>
  238. </controls:TextBoxEx>
  239. </DataTemplate>
  240. </DataGridTemplateColumn.CellTemplate>
  241. <DataGridTemplateColumn.Header>
  242. <TextBlock Text="Low(-)"></TextBlock>
  243. </DataGridTemplateColumn.Header>
  244. </DataGridTemplateColumn>
  245. <DataGridTemplateColumn Width="80">
  246. <DataGridTemplateColumn.CellTemplate>
  247. <DataTemplate>
  248. <Button Width="60" Background="{Binding SetUnit.IsSaved,Converter={StaticResource isSavedColorConverter},Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Content="{Binding SetUnit.Value, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" >
  249. <i:Interaction.Triggers>
  250. <i:EventTrigger EventName="Click">
  251. <cal:ActionMessage MethodName="UnitClick">
  252. <cal:Parameter Value="{Binding SetUnit.Value}"></cal:Parameter>
  253. <cal:Parameter Value="{Binding}"/>
  254. </cal:ActionMessage>
  255. </i:EventTrigger>
  256. </i:Interaction.Triggers>
  257. </Button>
  258. </DataTemplate>
  259. </DataGridTemplateColumn.CellTemplate>
  260. <DataGridTemplateColumn.Header>
  261. <TextBlock Text="Unit"></TextBlock>
  262. </DataGridTemplateColumn.Header>
  263. </DataGridTemplateColumn>
  264. <DataGridTemplateColumn Width="80">
  265. <DataGridTemplateColumn.CellTemplate>
  266. <DataTemplate>
  267. <TextBlock Width="100" Text="{Binding ScaleValue, Mode=TwoWay}" VerticalAlignment="Center" HorizontalAlignment="Center" TextAlignment="Center">
  268. </TextBlock>
  269. </DataTemplate>
  270. </DataGridTemplateColumn.CellTemplate>
  271. <DataGridTemplateColumn.Header>
  272. <TextBlock Text="Scale"></TextBlock>
  273. </DataGridTemplateColumn.Header>
  274. </DataGridTemplateColumn>
  275. </DataGrid.Columns>
  276. </DataGrid>
  277. </Grid>
  278. <Border Grid.Row="3">
  279. <Grid>
  280. <Canvas>
  281. <Button Content="Save" Canvas.Left="710" Canvas.Top="19" Width="130" Height="45" Style="{StaticResource CommandButton}" IsEnabled="{Binding IsEnable}">
  282. <i:Interaction.Triggers>
  283. <i:EventTrigger EventName="Click">
  284. <cal:ActionMessage MethodName="GASSettingSave">
  285. </cal:ActionMessage>
  286. </i:EventTrigger>
  287. </i:Interaction.Triggers>
  288. </Button>
  289. <Button Content="Close" Canvas.Left="860" Canvas.Top="19" Width="130" Height="45" Style="{StaticResource CommandButton}" >
  290. <i:Interaction.Triggers>
  291. <i:EventTrigger EventName="Click">
  292. <cal:ActionMessage MethodName="GASSettingCancel">
  293. </cal:ActionMessage>
  294. </i:EventTrigger>
  295. </i:Interaction.Triggers>
  296. </Button>
  297. </Canvas>
  298. </Grid>
  299. </Border>
  300. </Grid>
  301. </UserControl>