RecipesCompareTwoView.xaml 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744
  1. <UserControl
  2. x:Class="FurnaceUI.Views.Recipes.RecipesCompareTwoView"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:cal="http://www.caliburn.org"
  6. xmlns:controls="clr-namespace:OpenSEMI.Controls.Controls;assembly=MECF.Framework.UI.Client"
  7. xmlns:converter="clr-namespace:MECF.Framework.UI.Client.Ctrlib.Converter;assembly=MECF.Framework.UI.Client"
  8. xmlns:converter1="clr-namespace:FurnaceUI.Converter"
  9. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  10. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  11. xmlns:interop="clr-namespace:Microsoft.DwayneNeed.Interop;assembly=Microsoft.DwayneNeed"
  12. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  13. xmlns:toolkit="http://schemas.xceed.com/wpf/xaml/toolkit"
  14. xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
  15. d:DesignHeight="900"
  16. d:DesignWidth="1500"
  17. FontFamily="Segoe"
  18. mc:Ignorable="d">
  19. <UserControl.Resources>
  20. <Style BasedOn="{StaticResource ExModifyScrollBar}" TargetType="ScrollBar"/>
  21. <converter1:StringShowNameConvert x:Key="stringConvert"/>
  22. <toolkit:VisibilityToBoolConverter
  23. x:Key="VisibilityToBoolConverter"
  24. Inverted="True"
  25. Not="True"/>
  26. </UserControl.Resources>
  27. <Grid>
  28. <Grid.RowDefinitions>
  29. <RowDefinition Height="70"/>
  30. <RowDefinition Height="45"/>
  31. <RowDefinition Height="*"/>
  32. </Grid.RowDefinitions>
  33. <Border
  34. Grid.Row="0"
  35. Background="{DynamicResource Table_BG_Content}"
  36. BorderBrush="{DynamicResource Table_BD}"
  37. BorderThickness="1"
  38. CornerRadius="5,5,0,0">
  39. <Grid>
  40. <Grid.ColumnDefinitions>
  41. <ColumnDefinition Width="200"/>
  42. <ColumnDefinition Width="200"/>
  43. <ColumnDefinition Width="200"/>
  44. <ColumnDefinition Width="200"/>
  45. <ColumnDefinition Width="200"/>
  46. <ColumnDefinition Width="*"/>
  47. </Grid.ColumnDefinitions>
  48. <Border
  49. Grid.Column="0"
  50. Width="180"
  51. Margin="5"
  52. Padding="3"
  53. HorizontalAlignment="Left"
  54. BorderBrush="{DynamicResource Table_BD}"
  55. BorderThickness="1"
  56. IsEnabled="{Binding Path=IsStepModel}">
  57. <Grid>
  58. <Grid.RowDefinitions>
  59. <RowDefinition Height="*"/>
  60. <RowDefinition Height="*"/>
  61. </Grid.RowDefinitions>
  62. <CheckBox
  63. VerticalAlignment="Center"
  64. VerticalContentAlignment="Center"
  65. Content="Show Differing Steps"
  66. IsChecked="{Binding Path=IsShowDiffSteps, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  67. <CheckBox
  68. Grid.Row="1"
  69. VerticalAlignment="Center"
  70. VerticalContentAlignment="Center"
  71. Content="Show All Steps"
  72. IsChecked="{Binding Path=IsShowAllSteps, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  73. </Grid>
  74. </Border>
  75. <Border
  76. Grid.Column="1"
  77. Width="180"
  78. Margin="5"
  79. Padding="3"
  80. HorizontalAlignment="Left"
  81. BorderBrush="{DynamicResource Table_BD}"
  82. BorderThickness="1"
  83. IsEnabled="{Binding Path=IsStepModel}">
  84. <Grid>
  85. <Grid.RowDefinitions>
  86. <RowDefinition Height="*"/>
  87. <RowDefinition Height="*"/>
  88. </Grid.RowDefinitions>
  89. <CheckBox
  90. VerticalAlignment="Center"
  91. VerticalContentAlignment="Center"
  92. Content="Show Differing Parameters"
  93. IsChecked="{Binding Path=IsShowDiffParams, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  94. <CheckBox
  95. Grid.Row="1"
  96. VerticalAlignment="Center"
  97. VerticalContentAlignment="Center"
  98. Content="Show All Parameters"
  99. IsChecked="{Binding Path=IsShowAllParams, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
  100. </Grid>
  101. </Border>
  102. <Border
  103. Grid.Column="4"
  104. Width="180"
  105. Margin="5"
  106. Padding="3"
  107. HorizontalAlignment="Left"
  108. BorderBrush="{DynamicResource Table_BD}"
  109. BorderThickness="1">
  110. <Grid>
  111. <Grid.RowDefinitions>
  112. <RowDefinition Height="*"/>
  113. <RowDefinition Height="*"/>
  114. </Grid.RowDefinitions>
  115. <Grid.ColumnDefinitions>
  116. <ColumnDefinition Width="Auto"/>
  117. <ColumnDefinition Width="5"/>
  118. <ColumnDefinition/>
  119. </Grid.ColumnDefinitions>
  120. <Rectangle
  121. Width="50"
  122. Height="12"
  123. VerticalAlignment="Center"
  124. Fill="Tomato"
  125. Stroke="Black"
  126. StrokeThickness="1"/>
  127. <TextBlock
  128. Grid.Column="2"
  129. VerticalAlignment="Center"
  130. FontSize="14"
  131. Text="Difference"/>
  132. <Rectangle
  133. Grid.Row="1"
  134. Width="50"
  135. Height="12"
  136. VerticalAlignment="Center"
  137. Fill="Gold"
  138. Stroke="Black"
  139. StrokeThickness="1"/>
  140. <TextBlock
  141. Grid.Row="1"
  142. Grid.Column="2"
  143. VerticalAlignment="Center"
  144. FontSize="14"
  145. Text="Omit/Skip"/>
  146. </Grid>
  147. </Border>
  148. </Grid>
  149. </Border>
  150. <Grid
  151. Grid.Row="1"
  152. Height="30"
  153. Margin="0,4,0,0"
  154. VerticalAlignment="Center">
  155. <Grid.ColumnDefinitions>
  156. <ColumnDefinition Width="280"/>
  157. <ColumnDefinition Width="100"/>
  158. <ColumnDefinition Width="400*"/>
  159. <ColumnDefinition Width="230"/>
  160. <ColumnDefinition Width="100"/>
  161. <ColumnDefinition Width="400*"/>
  162. <ColumnDefinition Width="200"/>
  163. </Grid.ColumnDefinitions>
  164. <!--
  165. Modified by SSH,20250925,比较history时不隐藏able选择,因为sub等需要比较多个table
  166. 增加一个table按钮,允许比较两个recipe的不同table
  167. Visibility="{Binding IsVisibilityEdit, Converter={StaticResource BoolVisibilityConverter}}"
  168. -->
  169. <Border
  170. Margin="10,0,0,0"
  171. Padding="5,1,0,1"
  172. Background="{DynamicResource Table_BG_Title}"
  173. BorderBrush="{DynamicResource Table_BD}"
  174. BorderThickness="1,1,1,1"
  175. >
  176. <StackPanel Orientation="Horizontal">
  177. <TextBlock
  178. VerticalAlignment="Center"
  179. FontSize="13"
  180. Text="Recipe Type"/>
  181. <ComboBox
  182. x:Name="CboRecipeType"
  183. Width="100"
  184. Margin="4,0,0,0"
  185. IsEnabled="{Binding IsVisibilityEdit}"
  186. ItemsSource="{Binding RecipeProcessType}"
  187. SelectedItem="{Binding SelectedRecipeType }">
  188. <i:Interaction.Triggers>
  189. <i:EventTrigger EventName="SelectionChanged">
  190. <cal:ActionMessage MethodName="SelectChangedRecipeType">
  191. <cal:Parameter Value="$eventargs"/>
  192. </cal:ActionMessage>
  193. </i:EventTrigger>
  194. </i:Interaction.Triggers>
  195. </ComboBox>
  196. <Button
  197. Margin="2,0,0,0"
  198. Content="{Binding TableNameA}"
  199. IsEnabled="{Binding BtnTableIsEnabled}">
  200. <i:Interaction.Triggers>
  201. <i:EventTrigger EventName="Click">
  202. <cal:ActionMessage MethodName="SelectedRecipeTableA"/>
  203. </i:EventTrigger>
  204. </i:Interaction.Triggers>
  205. </Button>
  206. <Button
  207. Margin="2,0,0,0"
  208. Content="{Binding TableNameB}"
  209. IsEnabled="{Binding BtnTableIsEnabled}">
  210. <i:Interaction.Triggers>
  211. <i:EventTrigger EventName="Click">
  212. <cal:ActionMessage MethodName="SelectedRecipeTableB"/>
  213. </i:EventTrigger>
  214. </i:Interaction.Triggers>
  215. </Button>
  216. </StackPanel>
  217. </Border>
  218. <Border
  219. Grid.Column="1"
  220. Margin="10,0,0,0"
  221. Padding="5,1,0,1"
  222. Background="{DynamicResource Table_BG_Title}"
  223. BorderBrush="{DynamicResource Table_BD}"
  224. BorderThickness="1,1,1,1">
  225. <TextBlock
  226. VerticalAlignment="Center"
  227. FontSize="13"
  228. Foreground="{DynamicResource FG_Black}"
  229. Text="Recipe Name"
  230. TextWrapping="Wrap"/>
  231. </Border>
  232. <Border
  233. Grid.Column="2"
  234. Margin="0,0,4,0"
  235. Padding="5,1"
  236. Background="{DynamicResource Table_BG_Content}"
  237. BorderBrush="{DynamicResource Table_BD}"
  238. BorderThickness="0,1,1,1">
  239. <TextBlock
  240. HorizontalAlignment="Left"
  241. VerticalAlignment="Center"
  242. FontSize="13"
  243. Foreground="{DynamicResource FG_Black}"
  244. Text="{Binding RecipeA, Converter={StaticResource stringConvert}, ConverterParameter=30}"
  245. TextWrapping="Wrap"
  246. ToolTip="{Binding RecipeA}"/>
  247. </Border>
  248. <StackPanel
  249. Grid.Column="3"
  250. Width="400"
  251. Orientation="Horizontal"
  252. Visibility="{Binding IsVisibilityEdit, Converter={StaticResource BoolVisibilityConverter}}">
  253. <Button
  254. Width="80"
  255. Height="30"
  256. Margin="5,0,0,0"
  257. HorizontalAlignment="Left"
  258. Content="Select"
  259. FontSize="13">
  260. <i:Interaction.Triggers>
  261. <i:EventTrigger EventName="Click">
  262. <cal:ActionMessage MethodName="SelectA"/>
  263. </i:EventTrigger>
  264. </i:Interaction.Triggers>
  265. </Button>
  266. <Button
  267. Width="80"
  268. Height="30"
  269. Margin="5,0,0,0"
  270. Padding="5,1"
  271. HorizontalAlignment="Left"
  272. Content="Remove"
  273. FontSize="13"
  274. IsEnabled="{Binding EnableButtonRemoveA, Converter={StaticResource bool2VisibilityConverter}}">
  275. <i:Interaction.Triggers>
  276. <i:EventTrigger EventName="Click">
  277. <cal:ActionMessage MethodName="RemoveA"/>
  278. </i:EventTrigger>
  279. </i:Interaction.Triggers>
  280. </Button>
  281. </StackPanel>
  282. <StackPanel
  283. Grid.Column="3"
  284. Margin="10,0,0,0"
  285. Orientation="Horizontal"
  286. Visibility="{Binding IsVisibilityEdit, Converter={StaticResource VisibilityToBoolConverter}}">
  287. <TextBlock
  288. VerticalAlignment="Center"
  289. FontSize="13"
  290. Text="Time:"/>
  291. <TextBlock
  292. Margin="5,0,0,0"
  293. VerticalAlignment="Center"
  294. FontSize="13"
  295. Text="{Binding TimeA}"/>
  296. </StackPanel>
  297. <Border
  298. Grid.Column="4"
  299. Padding="5,1,0,1"
  300. Background="{DynamicResource Table_BG_Title}"
  301. BorderBrush="{DynamicResource Table_BD}"
  302. BorderThickness="1,1,1,1">
  303. <TextBlock
  304. VerticalAlignment="Center"
  305. FontSize="13"
  306. Foreground="{DynamicResource FG_Black}"
  307. Text="Recipe Name"
  308. TextWrapping="Wrap"/>
  309. </Border>
  310. <Border
  311. Grid.Column="5"
  312. Padding="5,1"
  313. Background="{DynamicResource Table_BG_Content}"
  314. BorderBrush="{DynamicResource Table_BD}"
  315. BorderThickness="0,1,1,1">
  316. <TextBlock
  317. HorizontalAlignment="Left"
  318. VerticalAlignment="Center"
  319. FontSize="13"
  320. Foreground="{DynamicResource FG_Black}"
  321. Text="{Binding RecipeB, Converter={StaticResource stringConvert}, ConverterParameter=30}"
  322. TextWrapping="Wrap"
  323. ToolTip="{Binding RecipeB}"/>
  324. </Border>
  325. <StackPanel
  326. Grid.Column="6"
  327. Width="400"
  328. Orientation="Horizontal"
  329. Visibility="{Binding IsVisibilityEdit, Converter={StaticResource BoolVisibilityConverter}}">
  330. <Button
  331. Width="80"
  332. Height="30"
  333. Margin="15,0,0,0"
  334. Padding="5,1"
  335. HorizontalAlignment="Left"
  336. Content="Select"
  337. FontSize="13">
  338. <i:Interaction.Triggers>
  339. <i:EventTrigger EventName="Click">
  340. <cal:ActionMessage MethodName="SelectB"/>
  341. </i:EventTrigger>
  342. </i:Interaction.Triggers>
  343. </Button>
  344. <Button
  345. Width="80"
  346. Height="30"
  347. Margin="5,0,0,0"
  348. Padding="5,1"
  349. HorizontalAlignment="Left"
  350. Content="Remove"
  351. FontSize="13"
  352. IsEnabled="{Binding EnableButtonRemoveB}">
  353. <i:Interaction.Triggers>
  354. <i:EventTrigger EventName="Click">
  355. <cal:ActionMessage MethodName="RemoveB"/>
  356. </i:EventTrigger>
  357. </i:Interaction.Triggers>
  358. </Button>
  359. </StackPanel>
  360. <StackPanel
  361. Grid.Column="6"
  362. Margin="10,0,0,0"
  363. Orientation="Horizontal"
  364. Visibility="{Binding IsVisibilityEdit, Converter={StaticResource VisibilityToBoolConverter}}">
  365. <TextBlock
  366. VerticalAlignment="Center"
  367. FontSize="13"
  368. Text="Time:"/>
  369. <TextBlock
  370. Margin="5,0,0,0"
  371. VerticalAlignment="Center"
  372. FontSize="13"
  373. Text="{Binding TimeB}"/>
  374. </StackPanel>
  375. </Grid>
  376. <Grid
  377. Grid.Row="2"
  378. Margin="0,1,0,0"
  379. Visibility="{Binding StepVisibility}">
  380. <Grid.ColumnDefinitions>
  381. <ColumnDefinition Width="50*"/>
  382. <ColumnDefinition Width="Auto"/>
  383. <ColumnDefinition Width="50*"/>
  384. </Grid.ColumnDefinitions>
  385. <Border
  386. Grid.Column="0"
  387. HorizontalAlignment="Stretch"
  388. Background="{DynamicResource Table_BG_Content}"
  389. BorderBrush="{DynamicResource Table_BD}"
  390. BorderThickness="1"
  391. CornerRadius=" 0">
  392. <Grid>
  393. <Grid.ColumnDefinitions>
  394. <ColumnDefinition Width="102*"/>
  395. </Grid.ColumnDefinitions>
  396. <Grid.RowDefinitions>
  397. <RowDefinition Height="20"/>
  398. <RowDefinition Height="*"/>
  399. </Grid.RowDefinitions>
  400. <StackPanel
  401. Grid.Row="0"
  402. Grid.Column="0"
  403. Orientation="Horizontal">
  404. <StackPanel Orientation="Horizontal" Visibility="{Binding BtnTableIsEnabled, Converter={StaticResource BoolVisibilityConverter}}">
  405. <TextBlock Margin="20,5,0,0" Text="Table:"/>
  406. <TextBlock Margin="20,5,0,0" Text="{Binding SelectedTwoTableData.Index}"/>
  407. <TextBlock Margin="20,5,0,0" Text="A name:"/>
  408. <TextBlock Margin="20,5,0,0" Text="{Binding SelectedTwoTableData.ATableName}"/>
  409. <TextBlock Margin="20,5,0,0" Text="B name:"/>
  410. <TextBlock Margin="20,5,0,0" Text="{Binding SelectedTwoTableData.BTableName}"/>
  411. </StackPanel>
  412. <TextBlock Margin="20,5,0,0" Text="Step:"/>
  413. <TextBlock Margin="10,5,0,0" Text="{Binding StepSelection.AStepName}"/>
  414. </StackPanel>
  415. <DataGrid
  416. x:Name="StepGrid"
  417. Grid.Row="1"
  418. Grid.Column="0"
  419. Margin="5"
  420. AutoGenerateColumns="False"
  421. Background="White"
  422. BorderThickness="0.1"
  423. CanUserAddRows="False"
  424. CanUserDeleteRows="False"
  425. FontFamily="Segoe"
  426. FontSize="18"
  427. IsReadOnly="True"
  428. RowHeight="40"
  429. ItemsSource="{Binding StepList, Mode=OneWay}"
  430. SelectedItem="{Binding StepSelection}"
  431. SelectionMode="Single"
  432. SelectionUnit="FullRow">
  433. <DataGrid.RowStyle>
  434. <Style TargetType="{x:Type DataGridRow}">
  435. <Style.Triggers>
  436. <DataTrigger Binding="{Binding IsHidden}" Value="True">
  437. <Setter Property="Visibility" Value="Collapsed"/>
  438. </DataTrigger>
  439. </Style.Triggers>
  440. </Style>
  441. </DataGrid.RowStyle>
  442. <i:Interaction.Triggers>
  443. <i:EventTrigger EventName="SelectionChanged">
  444. <cal:ActionMessage MethodName="StepGridSelectionChangedA"/>
  445. </i:EventTrigger>
  446. </i:Interaction.Triggers>
  447. <DataGrid.Columns>
  448. <DataGridTemplateColumn
  449. Width="50"
  450. CanUserSort="True"
  451. Header="No"
  452. IsReadOnly="True">
  453. <DataGridTemplateColumn.CellTemplate>
  454. <DataTemplate>
  455. <TextBlock
  456. Margin="5,0"
  457. HorizontalAlignment="Left"
  458. VerticalAlignment="Center"
  459. FontSize="18"
  460. Foreground="{DynamicResource FG_Black}"
  461. Text="{Binding AStepNumber}"
  462. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  463. </DataTemplate>
  464. </DataGridTemplateColumn.CellTemplate>
  465. <DataGridTemplateColumn.CellStyle>
  466. <Style TargetType="DataGridCell">
  467. <Setter Property="Background" Value="{Binding Path=Background}"/>
  468. </Style>
  469. </DataGridTemplateColumn.CellStyle>
  470. </DataGridTemplateColumn>
  471. <DataGridTemplateColumn
  472. Width="*"
  473. CanUserSort="True"
  474. Header="Base File Step"
  475. IsReadOnly="True">
  476. <DataGridTemplateColumn.CellTemplate>
  477. <DataTemplate>
  478. <TextBlock
  479. Margin="5,0"
  480. HorizontalAlignment="Left"
  481. VerticalAlignment="Center"
  482. FontSize="18"
  483. Foreground="{DynamicResource FG_Black}"
  484. Text="{Binding AStepName}"
  485. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  486. </DataTemplate>
  487. </DataGridTemplateColumn.CellTemplate>
  488. <DataGridTemplateColumn.CellStyle>
  489. <Style TargetType="DataGridCell">
  490. <Setter Property="Background" Value="{Binding Path=Background}"/>
  491. </Style>
  492. </DataGridTemplateColumn.CellStyle>
  493. </DataGridTemplateColumn>
  494. <DataGridTemplateColumn
  495. Width="50"
  496. CanUserSort="True"
  497. Header="No"
  498. IsReadOnly="True">
  499. <DataGridTemplateColumn.CellTemplate>
  500. <DataTemplate>
  501. <TextBlock
  502. Margin="5,0"
  503. HorizontalAlignment="Left"
  504. VerticalAlignment="Center"
  505. FontSize="18"
  506. Foreground="{DynamicResource FG_Black}"
  507. Text="{Binding BStepNumber}"
  508. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  509. </DataTemplate>
  510. </DataGridTemplateColumn.CellTemplate>
  511. <DataGridTemplateColumn.CellStyle>
  512. <Style TargetType="DataGridCell">
  513. <Setter Property="Background" Value="{Binding Path=Background}"/>
  514. </Style>
  515. </DataGridTemplateColumn.CellStyle>
  516. </DataGridTemplateColumn>
  517. <DataGridTemplateColumn
  518. Width="1.1*"
  519. CanUserSort="True"
  520. Header="Compared File Step"
  521. IsReadOnly="True">
  522. <DataGridTemplateColumn.CellTemplate>
  523. <DataTemplate>
  524. <TextBlock
  525. Margin="5,0"
  526. HorizontalAlignment="Left"
  527. VerticalAlignment="Center"
  528. FontSize="18"
  529. Foreground="{DynamicResource FG_Black}"
  530. Text="{Binding BStepName}"
  531. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  532. </DataTemplate>
  533. </DataGridTemplateColumn.CellTemplate>
  534. <DataGridTemplateColumn.CellStyle>
  535. <Style TargetType="DataGridCell">
  536. <Setter Property="Background" Value="{Binding Path=Background}"/>
  537. </Style>
  538. </DataGridTemplateColumn.CellStyle>
  539. </DataGridTemplateColumn>
  540. </DataGrid.Columns>
  541. </DataGrid>
  542. </Grid>
  543. </Border>
  544. <GridSplitter
  545. Grid.Column="1"
  546. Width="10"
  547. Margin="2,0"
  548. HorizontalAlignment="Center"
  549. Cursor="SizeWE">
  550. <GridSplitter.Resources>
  551. <Style TargetType="{x:Type GridSplitter}">
  552. <Setter Property="PreviewStyle">
  553. <Setter.Value>
  554. <Style>
  555. <Setter Property="Control.Template">
  556. <Setter.Value>
  557. <ControlTemplate>
  558. <Rectangle Fill="#80000000"/>
  559. </ControlTemplate>
  560. </Setter.Value>
  561. </Setter>
  562. </Style>
  563. </Setter.Value>
  564. </Setter>
  565. <Setter Property="Template">
  566. <Setter.Value>
  567. <ControlTemplate TargetType="{x:Type GridSplitter}">
  568. <Border BorderThickness="{TemplateBinding BorderThickness}"/>
  569. </ControlTemplate>
  570. </Setter.Value>
  571. </Setter>
  572. </Style>
  573. </GridSplitter.Resources>
  574. <GridSplitter.Template>
  575. <ControlTemplate TargetType="{x:Type GridSplitter}">
  576. <Grid VerticalAlignment="Stretch">
  577. <Button
  578. Margin="-0.3,0,0,0"
  579. VerticalAlignment="Stretch"
  580. VerticalContentAlignment="Center"
  581. Background="#DDE0E3"
  582. BorderBrush="Transparent"
  583. BorderThickness="1"
  584. Content="⁞"/>
  585. <Rectangle VerticalAlignment="Stretch" Fill="Transparent"/>
  586. </Grid>
  587. </ControlTemplate>
  588. </GridSplitter.Template>
  589. </GridSplitter>
  590. <Border
  591. Grid.Column="2"
  592. HorizontalAlignment="Stretch"
  593. Background="{DynamicResource Table_BG_Content}"
  594. BorderBrush="{DynamicResource Table_BD}"
  595. BorderThickness="1"
  596. CornerRadius=" 0">
  597. <Grid>
  598. <Grid.RowDefinitions>
  599. <RowDefinition Height="20"/>
  600. <RowDefinition Height="*"/>
  601. </Grid.RowDefinitions>
  602. <StackPanel
  603. Grid.Row="0"
  604. Grid.Column="1"
  605. Orientation="Horizontal"
  606. Visibility="{Binding ParamVisibility}">
  607. <TextBlock Margin="20,5,0,0" Text="Step Parameter:"/>
  608. <TextBlock Margin="10,5,0,0" Text="{Binding ParamSelection.ParamName}"/>
  609. <TextBlock Margin="10,5,0,0" Text="Base Value:"/>
  610. <TextBlock Margin="10,5,0,0" Text="{Binding ParamSelection.AParamValue}"/>
  611. <TextBlock Margin="10,5,0,0" Text="Compared Value:"/>
  612. <TextBlock Margin="10,5,0,0" Text="{Binding ParamSelection.BParamValue}"/>
  613. </StackPanel>
  614. <!-- SelectedItem="{Binding ParamSelectionB}" -->
  615. <DataGrid
  616. x:Name="ParamGrid"
  617. Grid.Row="1"
  618. Grid.Column="1"
  619. Margin="5"
  620. AutoGenerateColumns="False"
  621. Background="White"
  622. BorderThickness="0.1"
  623. CanUserAddRows="False"
  624. CanUserDeleteRows="False"
  625. FontFamily="Segoe"
  626. FontSize="18"
  627. IsReadOnly="True"
  628. RowHeight="40"
  629. ItemsSource="{Binding ParamList, Mode=OneWay}"
  630. SelectedItem="{Binding ParamSelection}"
  631. SelectionMode="Single"
  632. SelectionUnit="FullRow"
  633. VirtualizingStackPanel.IsVirtualizing="True">
  634. <DataGrid.RowStyle>
  635. <Style TargetType="{x:Type DataGridRow}">
  636. <Style.Triggers>
  637. <DataTrigger Binding="{Binding IsHidden}" Value="True">
  638. <Setter Property="Visibility" Value="Collapsed"/>
  639. </DataTrigger>
  640. </Style.Triggers>
  641. </Style>
  642. </DataGrid.RowStyle>
  643. <i:Interaction.Triggers>
  644. <i:EventTrigger EventName="SelectionChanged">
  645. <cal:ActionMessage MethodName="ParamGridSelectionChangedB"/>
  646. </i:EventTrigger>
  647. </i:Interaction.Triggers>
  648. <DataGrid.Columns>
  649. <DataGridTemplateColumn
  650. Width="150"
  651. CanUserSort="True"
  652. Header="Parameter Item"
  653. IsReadOnly="True">
  654. <DataGridTemplateColumn.CellTemplate>
  655. <DataTemplate>
  656. <TextBlock
  657. Margin="5,0"
  658. HorizontalAlignment="Left"
  659. VerticalAlignment="Center"
  660. FontSize="18"
  661. Foreground="{DynamicResource FG_Black}"
  662. Text="{Binding ParamName}"
  663. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  664. </DataTemplate>
  665. </DataGridTemplateColumn.CellTemplate>
  666. <DataGridTemplateColumn.CellStyle>
  667. <Style TargetType="DataGridCell">
  668. <Setter Property="Background" Value="{Binding Path=Background}"/>
  669. </Style>
  670. </DataGridTemplateColumn.CellStyle>
  671. </DataGridTemplateColumn>
  672. <DataGridTemplateColumn
  673. Width="*"
  674. CanUserSort="True"
  675. Header="Base File"
  676. IsReadOnly="True">
  677. <DataGridTemplateColumn.CellTemplate>
  678. <DataTemplate>
  679. <TextBlock
  680. Margin="5,0"
  681. HorizontalAlignment="Left"
  682. VerticalAlignment="Center"
  683. FontSize="18"
  684. Foreground="{DynamicResource FG_Black}"
  685. Text="{Binding AParamValue}"
  686. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  687. </DataTemplate>
  688. </DataGridTemplateColumn.CellTemplate>
  689. <DataGridTemplateColumn.CellStyle>
  690. <Style TargetType="DataGridCell">
  691. <Setter Property="Background" Value="{Binding Path=Background}"/>
  692. </Style>
  693. </DataGridTemplateColumn.CellStyle>
  694. </DataGridTemplateColumn>
  695. <DataGridTemplateColumn
  696. Width="*"
  697. CanUserSort="True"
  698. Header="Compared File"
  699. IsReadOnly="True">
  700. <DataGridTemplateColumn.CellTemplate>
  701. <DataTemplate>
  702. <TextBlock
  703. Margin="5,0"
  704. HorizontalAlignment="Left"
  705. VerticalAlignment="Center"
  706. FontSize="18"
  707. Foreground="{DynamicResource FG_Black}"
  708. Text="{Binding BParamValue}"
  709. ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}"/>
  710. </DataTemplate>
  711. </DataGridTemplateColumn.CellTemplate>
  712. <DataGridTemplateColumn.CellStyle>
  713. <Style TargetType="DataGridCell">
  714. <Setter Property="Background" Value="{Binding Path=Background}"/>
  715. </Style>
  716. </DataGridTemplateColumn.CellStyle>
  717. </DataGridTemplateColumn>
  718. </DataGrid.Columns>
  719. </DataGrid>
  720. </Grid>
  721. </Border>
  722. </Grid>
  723. </Grid>
  724. </UserControl>