| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348 | <UserControl    x:Class="FurnaceUI.Views.Recipes.RecipesHistoryCompareView"    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"    xmlns:cal="http://www.caliburn.org"    xmlns:controls="clr-namespace:OpenSEMI.Controls.Controls;assembly=MECF.Framework.UI.Client"    xmlns:converter="clr-namespace:MECF.Framework.UI.Client.Ctrlib.Converter;assembly=MECF.Framework.UI.Client"    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"    xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"    xmlns:interop="clr-namespace:Microsoft.DwayneNeed.Interop;assembly=Microsoft.DwayneNeed"    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"    xmlns:wf="[wf ]clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"    Width="1280"    Height="980"    FontFamily="Segoe"    mc:Ignorable="d">    <Grid Margin="-5">        <Grid.RowDefinitions>            <RowDefinition Height="70" />            <RowDefinition Height="40" />            <RowDefinition Height="*" />        </Grid.RowDefinitions>        <Border            Grid.Row="0"            Background="{DynamicResource Table_BG_Content}"            BorderBrush="{DynamicResource Table_BD}"            BorderThickness="1"            CornerRadius="5,5,0,0">            <Grid>                <Grid.ColumnDefinitions>                    <ColumnDefinition Width="200" />                    <ColumnDefinition Width="200" />                    <ColumnDefinition Width="200" />                    <ColumnDefinition Width="200" />                    <ColumnDefinition Width="200" />                    <ColumnDefinition Width="*" />                </Grid.ColumnDefinitions>                <Border                    Grid.Column="0"                    Width="180"                    Margin="5"                    Padding="3"                    HorizontalAlignment="Left"                    BorderBrush="{DynamicResource Table_BD}"                    BorderThickness="1"                    IsEnabled="{Binding Path=IsStepModel}">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*" />                            <RowDefinition Height="*" />                        </Grid.RowDefinitions>                        <CheckBox                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Show Differing Steps"                            IsChecked="{Binding Path=IsShowDiffSteps, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                        <CheckBox                            Grid.Row="1"                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Show All Steps"                            IsChecked="{Binding Path=IsShowAllSteps, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                    </Grid>                </Border>                <Border                    Grid.Column="1"                    Width="180"                    Margin="5"                    Padding="3"                    HorizontalAlignment="Left"                    BorderBrush="{DynamicResource Table_BD}"                    BorderThickness="1"                    IsEnabled="{Binding Path=IsStepModel}">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*" />                            <RowDefinition Height="*" />                        </Grid.RowDefinitions>                        <CheckBox                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Show Differing Parameters"                            IsChecked="{Binding Path=IsShowDiffParams, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                        <CheckBox                            Grid.Row="1"                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Show All Parameters"                            IsChecked="{Binding Path=IsShowAllParams, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                    </Grid>                </Border>                <Border                    Grid.Column="2"                    Width="180"                    Margin="5"                    Padding="3"                    HorizontalAlignment="Left"                    BorderBrush="{DynamicResource Table_BD}"                    BorderThickness="1"                    IsEnabled="{Binding Path=IsStepModel}">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*" />                            <RowDefinition Height="*" />                        </Grid.RowDefinitions>                        <CheckBox                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Compare By Step #"                            IsChecked="{Binding Path=IsCompareByStep, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                        <CheckBox                            Grid.Row="1"                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Compare By Step Name"                            IsChecked="{Binding Path=IsCompareBySName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                    </Grid>                </Border>                <Border                    Grid.Column="3"                    Width="180"                    Margin="5"                    Padding="3"                    HorizontalAlignment="Left"                    BorderBrush="{DynamicResource Table_BD}"                    BorderThickness="1">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*" />                            <RowDefinition Height="*" />                        </Grid.RowDefinitions>                        <CheckBox                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Step Mode"                            IsChecked="{Binding Path=IsStepModel, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                        <CheckBox                            Grid.Row="1"                            VerticalAlignment="Center"                            VerticalContentAlignment="Center"                            Content="Whole Mode"                            IsChecked="{Binding Path=IsWholeModel, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />                    </Grid>                </Border>                <Border                    Grid.Column="4"                    Width="180"                    Margin="5"                    Padding="3"                    HorizontalAlignment="Left"                    BorderBrush="{DynamicResource Table_BD}"                    BorderThickness="1">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*" />                            <RowDefinition Height="*" />                        </Grid.RowDefinitions>                        <Grid.ColumnDefinitions>                            <ColumnDefinition Width="Auto" />                            <ColumnDefinition Width="5" />                            <ColumnDefinition />                        </Grid.ColumnDefinitions>                        <Rectangle                            Width="50"                            Height="10"                            VerticalAlignment="Center"                            Fill="Tomato"                            Stroke="Black"                            StrokeThickness="1" />                        <Rectangle                            Grid.Row="1"                            Width="50"                            Height="10"                            VerticalAlignment="Center"                            Fill="Gold"                            Stroke="Black"                            StrokeThickness="1" />                        <TextBlock                            Grid.Column="2"                            VerticalAlignment="Center"                            FontSize="12"                            Text="Difference" />                        <TextBlock                            Grid.Row="1"                            Grid.Column="2"                            VerticalAlignment="Center"                            FontSize="12"                            Text="Omit/Skip" />                    </Grid>                </Border>            </Grid>        </Border>        <Grid Grid.Row="1" Margin="0,8,0,0">            <Grid.ColumnDefinitions>                <ColumnDefinition Width="100" />                <ColumnDefinition Width="200*" />                <ColumnDefinition Width="430" />                <ColumnDefinition Width="100" />                <ColumnDefinition Width="200*" />                <ColumnDefinition Width="400" />            </Grid.ColumnDefinitions>            <Border                Grid.Column="0"                Padding="5,1,0,1"                Background="{DynamicResource Table_BG_Title}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1,1,1,1">                <TextBlock                    VerticalAlignment="Center"                    FontSize="13"                    Foreground="{DynamicResource FG_Black}"                    Text="Recipe Name"                    TextWrapping="Wrap" />            </Border>            <Border                Grid.Column="1"                Padding="5,1"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="0,1,1,1">                <TextBlock                    HorizontalAlignment="Left"                    VerticalAlignment="Center"                    FontSize="13"                    Foreground="{DynamicResource FG_Black}"                    Text="{Binding RecipeA}"                    TextWrapping="Wrap" />            </Border>            <StackPanel                Grid.Column="2"                Margin="10,0,0,0"                Orientation="Horizontal">                <TextBlock                    VerticalAlignment="Center"                    FontSize="13"                    Text="Time:" />                <TextBlock                    Margin="5,0,0,0"                    VerticalAlignment="Center"                    FontSize="13"                    Text="{Binding TimeA}" />                <!--<Button                    Width="70"                    Height="25"                    Margin="35,0,0,0"                    Padding="5,1"                    HorizontalAlignment="Left"                    Content="Undo"                    FontSize="13"                    IsEnabled="{Binding IsSelectButtonEnable}">                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="UndoB" />                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>-->                <!--<Button                    Width="70"                    Height="25"                    Margin="15,0,0,0"                    Padding="5,1"                    HorizontalAlignment="Left"                    Content="Save"                    FontSize="13"                    IsEnabled="{Binding IsSelectButtonEnable}">                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="SaveA" />                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>-->            </StackPanel>            <Border                Grid.Column="3"                Padding="5,1,0,1"                Background="{DynamicResource Table_BG_Title}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1,1,1,1">                <TextBlock                    VerticalAlignment="Center"                    FontSize="13"                    Foreground="{DynamicResource FG_Black}"                    Text="Recipe Name"                    TextWrapping="Wrap" />            </Border>            <Border                Grid.Column="4"                Padding="5,1"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="0,1,1,1">                <TextBlock                    HorizontalAlignment="Left"                    VerticalAlignment="Center"                    FontSize="13"                    Foreground="{DynamicResource FG_Black}"                    Text="{Binding RecipeB}"                    TextWrapping="Wrap" />            </Border>            <StackPanel                Grid.Column="5"                Margin="10,0,0,0"                Orientation="Horizontal">                <TextBlock                    VerticalAlignment="Center"                    FontSize="13"                    Text="Time:" />                <TextBlock                    Margin="5,0,0,0"                    VerticalAlignment="Center"                    FontSize="13"                    Text="{Binding TimeB}" />                <!--<Button                    Width="70"                    Height="25"                    Margin="35,0,0,0"                    Padding="5,1"                    HorizontalAlignment="Left"                    Content="Undo"                    FontSize="13"                    IsEnabled="{Binding IsSelectButtonEnable}">                    <i:Interaction.Triggers>                        <i:EventTrigger EventName="Click">                            <cal:ActionMessage MethodName="UndoA" />                        </i:EventTrigger>                    </i:Interaction.Triggers>                </Button>-->            </StackPanel>        </Grid>        <Grid Grid.Row="2" Visibility="{Binding WholeVisibility}">            <Grid.ColumnDefinitions>                <ColumnDefinition Width="100*" />                <ColumnDefinition Width="100*" />            </Grid.ColumnDefinitions>            <Border                Grid.Column="0"                Margin="0,1,15,0"                HorizontalAlignment="Stretch"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1"                CornerRadius=" 0">                <Grid>                    <Grid.RowDefinitions>                        <RowDefinition Height="0" />                        <RowDefinition Height="0" />                        <RowDefinition Height="774*" />                    </Grid.RowDefinitions>                    <!--<Grid                        Grid.Row="0"                        Grid.RowSpan="2"                        Grid.Column="0">                        <Grid.RowDefinitions>                            <RowDefinition Height="20" />                            <RowDefinition Height="20" />                        </Grid.RowDefinitions>                        <Grid.ColumnDefinitions>                            <ColumnDefinition Width="50" />                            <ColumnDefinition Width="50" />                            <ColumnDefinition Width="*" />                            <ColumnDefinition Width="100" />                        </Grid.ColumnDefinitions>                        <TextBlock                            Grid.Column="0"                            Margin="10,5,0,0"                            Text="Line :" />                        <TextBlock                            Grid.Column="1"                            Margin="5,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding LineSelectionA.LineNumber}" />                        <TextBox                            Grid.RowSpan="2"                            Grid.Column="2"                            Height="40"                            Margin="5,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding LineSelectionA.LineText, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"                            TextWrapping="Wrap" />                        <Button                            Grid.RowSpan="2"                            Grid.Column="3"                            Margin="5,2,5,0"                            Content="Modify">                            <i:Interaction.Triggers>                                <i:EventTrigger EventName="Click">                                    <cal:ActionMessage MethodName="SaveLineA" />                                </i:EventTrigger>                            </i:Interaction.Triggers>                        </Button>                    </Grid>-->                    <DataGrid                        x:Name="WholeGridA"                        Grid.Row="2"                        Grid.RowSpan="2"                        Grid.Column="0"                        Margin="0,5,0,0"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        FontFamily="Segoe"                        FontSize="13"                        IsReadOnly="True"                        ItemsSource="{Binding WholeListA, Mode=OneWay}"                        SelectedItem="{Binding LineSelectionA}"                        SelectionMode="Single"                        SelectionUnit="FullRow">                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="WholeGridSelectionChangedA" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="100" Header="Copy To Left">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="60"                                            Height="20"                                            Padding="0,-3"                                            Content=">"                                            FontSize="20"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="LineCopyToRight">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="55"                                CanUserSort="True"                                Header="Line #"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            FontSize="14"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding LineNumber}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="Line Text"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            FontSize="14"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding LineText}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                </Grid>            </Border>            <GridSplitter                Grid.Column="1"                Width="10"                HorizontalAlignment="Left"                Cursor="SizeWE">                <GridSplitter.Resources>                    <Style TargetType="{x:Type GridSplitter}">                        <Setter Property="PreviewStyle">                            <Setter.Value>                                <Style>                                    <Setter Property="Control.Template">                                        <Setter.Value>                                            <ControlTemplate>                                                <Rectangle Fill="#80000000" />                                            </ControlTemplate>                                        </Setter.Value>                                    </Setter>                                </Style>                            </Setter.Value>                        </Setter>                        <Setter Property="Template">                            <Setter.Value>                                <ControlTemplate TargetType="{x:Type GridSplitter}">                                    <Border BorderThickness="{TemplateBinding BorderThickness}" />                                </ControlTemplate>                            </Setter.Value>                        </Setter>                    </Style>                </GridSplitter.Resources>                <GridSplitter.Template>                    <ControlTemplate TargetType="{x:Type GridSplitter}">                        <Grid VerticalAlignment="Stretch">                            <Button                                Margin="-0.3,0,0,0"                                VerticalAlignment="Stretch"                                VerticalContentAlignment="Center"                                Background="#DDE0E3"                                BorderBrush="Transparent"                                BorderThickness="1"                                Content="⁞" />                            <Rectangle VerticalAlignment="Stretch" Fill="Transparent" />                        </Grid>                    </ControlTemplate>                </GridSplitter.Template>            </GridSplitter>            <Border                Grid.Column="1"                Margin="15,1,0,0"                HorizontalAlignment="Stretch"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1"                CornerRadius=" 0">                <Grid Grid.Row="2">                    <Grid.RowDefinitions>                        <RowDefinition Height="0" />                        <RowDefinition Height="0" />                        <RowDefinition Height="*" />                    </Grid.RowDefinitions>                    <!--<Grid                        Grid.Row="0"                        Grid.RowSpan="2"                        Grid.Column="0">                        <Grid.RowDefinitions>                            <RowDefinition Height="20" />                            <RowDefinition Height="20" />                        </Grid.RowDefinitions>                        <Grid.ColumnDefinitions>                            <ColumnDefinition Width="50" />                            <ColumnDefinition Width="50" />                            <ColumnDefinition Width="100*" />                            <ColumnDefinition Width="100" />                        </Grid.ColumnDefinitions>                        <TextBlock                            Grid.Column="0"                            Margin="10,5,0,0"                            Text="Line:" />                        <TextBlock                            Grid.Column="1"                            Margin="5,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding LineSelectionB.LineNumber}" />                        <TextBox                            Grid.RowSpan="2"                            Grid.Column="2"                            Height="40"                            Margin="5,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding LineSelectionB.LineText, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"                            TextWrapping="Wrap" />                        <Button                            Grid.RowSpan="2"                            Grid.Column="3"                            Margin="5,2,5,0"                            Content="Modify">                            <i:Interaction.Triggers>                                <i:EventTrigger EventName="Click">                                    <cal:ActionMessage MethodName="SaveLineB" />                                </i:EventTrigger>                            </i:Interaction.Triggers>                        </Button>                    </Grid>-->                    <DataGrid                        x:Name="WholeGridB"                        Grid.Row="2"                        Grid.Column="0"                        Margin="5"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        FontFamily="Segoe"                        FontSize="13"                        IsReadOnly="True"                        ItemsSource="{Binding WholeListB, Mode=OneWay}"                        SelectedItem="{Binding LineSelectionB}"                        SelectionMode="Single"                        SelectionUnit="FullRow">                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="WholeGridSelectionChangedB" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="100" Header="Copy To Left">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="60"                                            Height="20"                                            Padding="0,-3"                                            Content="<"                                            FontSize="20"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="LineCopyToLeft">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="55"                                CanUserSort="True"                                Header="Line #"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            FontSize="14"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding LineNumber}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="Line Text"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            FontSize="14"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding LineText}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                </Grid>            </Border>        </Grid>        <Grid Grid.Row="2" Visibility="{Binding StepVisibility}">            <Grid.ColumnDefinitions>                <ColumnDefinition Width="*" />                <ColumnDefinition Width="6" />                <ColumnDefinition Width="*" />            </Grid.ColumnDefinitions>            <Border                Grid.Column="0"                Margin="0,1,1,0"                HorizontalAlignment="Stretch"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1"                CornerRadius=" 0">                <Grid>                    <Grid.ColumnDefinitions>                        <ColumnDefinition Width="*" />                        <ColumnDefinition Width="*" />                    </Grid.ColumnDefinitions>                    <Grid.RowDefinitions>                        <RowDefinition Height="20" />                        <RowDefinition Height="*" />                    </Grid.RowDefinitions>                    <StackPanel                        Grid.Row="0"                        Grid.Column="0"                        Orientation="Horizontal">                        <TextBlock Margin="20,5,0,0" Text="Step:" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding StepSelectionA.StepNumber}" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding StepSelectionA.StepName}" />                    </StackPanel>                    <DataGrid                        x:Name="StepGridA"                        Grid.Row="1"                        Grid.Column="0"                        Margin="2,5,0,0"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        IsReadOnly="True"                        ItemsSource="{Binding StepListA, Mode=OneWay}"                        SelectedItem="{Binding StepSelectionA}"                        SelectionMode="Single"                        SelectionUnit="FullRow">                        <DataGrid.RowStyle>                            <Style TargetType="{x:Type DataGridRow}">                                <Style.Triggers>                                    <DataTrigger Binding="{Binding IsHidden}" Value="True">                                        <Setter Property="Visibility" Value="Collapsed" />                                    </DataTrigger>                                </Style.Triggers>                            </Style>                        </DataGrid.RowStyle>                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="StepGridSelectionChangedA" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="60" Header="Delete">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="46"                                            Height="20"                                            Padding="0,-3"                                            Content="x"                                            FontSize="20"                                            Visibility="{Binding DeleteVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="LeftDelete">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <!--<DataGridTemplateColumn Width="60" Header="ToRight">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="55"                                            Height="20"                                            Padding="0,-3"                                            Content=">"                                            FontSize="20"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="StepCopyToRight">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="47"                                CanUserSort="True"                                Header="Step#"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding StepNumber}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="Step Name"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="1,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding StepName}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                    <StackPanel                        Grid.Row="0"                        Grid.Column="1"                        Orientation="Horizontal">                        <TextBlock Margin="20,5,0,0" Text="Step Parameter:" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding ParamSelectionA.ParamName}" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding ParamSelectionA.ParamValue}" />                    </StackPanel>                    <DataGrid                        x:Name="ParamGridA"                        Grid.Row="1"                        Grid.Column="1"                        Margin="2,5,0,0"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        EnableRowVirtualization="True"                        IsReadOnly="True"                        ItemsSource="{Binding ParamListA, Mode=OneWay, IsAsync=True}"                        ScrollViewer.CanContentScroll="True"                        SelectedItem="{Binding ParamSelectionA}"                        SelectionMode="Single"                        SelectionUnit="FullRow"                        VirtualizingPanel.CacheLengthUnit="Item"                        VirtualizingPanel.IsContainerVirtualizable="True"                        VirtualizingPanel.IsVirtualizing="True"                        VirtualizingPanel.VirtualizationMode="Recycling">                        <DataGrid.RowStyle>                            <Style TargetType="{x:Type DataGridRow}">                                <Style.Triggers>                                    <DataTrigger Binding="{Binding IsHidden}" Value="True">                                        <Setter Property="Visibility" Value="Collapsed" />                                    </DataTrigger>                                </Style.Triggers>                            </Style>                        </DataGrid.RowStyle>                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="ParamGridSelectionChangedA" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="60" Header="ToRight">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="55"                                            Height="25"                                            Padding="0"                                            Content=">"                                            FontSize="20"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="ParamCopyToRight">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="160"                                CanUserSort="True"                                Header="ParaName"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="2,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding ParamName}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="ParaValue"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="1,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding ParamValue}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                </Grid>            </Border>            <GridSplitter                Grid.Column="1"                Width="4"                HorizontalAlignment="Left"                Cursor="SizeWE">                <GridSplitter.Resources>                    <Style TargetType="{x:Type GridSplitter}">                        <Setter Property="PreviewStyle">                            <Setter.Value>                                <Style>                                    <Setter Property="Control.Template">                                        <Setter.Value>                                            <ControlTemplate>                                                <Rectangle Fill="#80000000" />                                            </ControlTemplate>                                        </Setter.Value>                                    </Setter>                                </Style>                            </Setter.Value>                        </Setter>                        <Setter Property="Template">                            <Setter.Value>                                <ControlTemplate TargetType="{x:Type GridSplitter}">                                    <Border BorderThickness="{TemplateBinding BorderThickness}" />                                </ControlTemplate>                            </Setter.Value>                        </Setter>                    </Style>                </GridSplitter.Resources>                <GridSplitter.Template>                    <ControlTemplate TargetType="{x:Type GridSplitter}">                        <Grid VerticalAlignment="Stretch">                            <Button                                VerticalAlignment="Stretch"                                VerticalContentAlignment="Center"                                Background="#DDE0E3"                                BorderBrush="Transparent"                                BorderThickness="1"                                Content="⁞" />                            <Rectangle VerticalAlignment="Stretch" Fill="Transparent" />                        </Grid>                    </ControlTemplate>                </GridSplitter.Template>            </GridSplitter>            <Border                Grid.Column="2"                Margin="4,1,0,0"                HorizontalAlignment="Stretch"                Background="{DynamicResource Table_BG_Content}"                BorderBrush="{DynamicResource Table_BD}"                BorderThickness="1"                CornerRadius=" 0">                <Grid Grid.Row="2">                    <Grid.ColumnDefinitions>                        <ColumnDefinition Width="100*" />                        <ColumnDefinition Width="100*" />                    </Grid.ColumnDefinitions>                    <Grid.RowDefinitions>                        <RowDefinition Height="20" />                        <RowDefinition Height="*" />                    </Grid.RowDefinitions>                    <StackPanel                        Grid.Row="0"                        Grid.Column="0"                        Orientation="Horizontal">                        <TextBlock Margin="20,5,0,0" Text="Step:" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding StepSelectionB.StepNumber}" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding StepSelectionB.StepName}" />                    </StackPanel>                    <DataGrid                        x:Name="StepGridB"                        Grid.Row="1"                        Grid.Column="0"                        Margin="2,5,0,0"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        IsReadOnly="True"                        ItemsSource="{Binding StepListB, Mode=OneWay}"                        SelectedItem="{Binding StepSelectionB}"                        SelectionMode="Single"                        SelectionUnit="FullRow">                        <DataGrid.RowStyle>                            <Style TargetType="{x:Type DataGridRow}">                                <Style.Triggers>                                    <DataTrigger Binding="{Binding IsHidden}" Value="True">                                        <Setter Property="Visibility" Value="Collapsed" />                                    </DataTrigger>                                </Style.Triggers>                            </Style>                        </DataGrid.RowStyle>                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="StepGridSelectionChangedB" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="60" Header="Delete">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="55"                                            Height="20"                                            Padding="0,-3"                                            Content="x"                                            FontSize="20"                                            Visibility="{Binding DeleteVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="RightDelete">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <!--<DataGridTemplateColumn Width="60" Header="ToLeft">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="55"                                            Height="20"                                            Padding="0,-3"                                            Content="<"                                            FontSize="20"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="StepCopyToLeft">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="47"                                CanUserSort="True"                                Header="Step#"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="5,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding StepNumber}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="Step Name"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="1,0,0,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding StepName}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                    <StackPanel                        Grid.Row="0"                        Grid.Column="1"                        Orientation="Horizontal">                        <TextBlock Margin="20,5,0,0" Text="Step Parameter:" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding ParamSelectionB.ParamName}" />                        <TextBlock                            Margin="10,2,0,0"                            FontSize="15"                            FontWeight="Bold"                            Text="{Binding ParamSelectionB.ParamValue}" />                    </StackPanel>                    <DataGrid                        x:Name="ParamGridB"                        Grid.Row="1"                        Grid.Column="1"                        Margin="2,5,0,0"                        AutoGenerateColumns="False"                        Background="White"                        BorderThickness="0.1"                        CanUserAddRows="False"                        CanUserDeleteRows="False"                        EnableRowVirtualization="True"                        IsReadOnly="True"                        ItemsSource="{Binding ParamListB, Mode=OneWay, IsAsync=True}"                        ScrollViewer.CanContentScroll="True"                        SelectedItem="{Binding ParamSelectionB}"                        SelectionMode="Single"                        SelectionUnit="FullRow"                        VirtualizingPanel.CacheLengthUnit="Item"                        VirtualizingPanel.IsContainerVirtualizable="True"                        VirtualizingPanel.IsVirtualizing="True"                        VirtualizingPanel.VirtualizationMode="Recycling">                        <DataGrid.RowStyle>                            <Style TargetType="{x:Type DataGridRow}">                                <Style.Triggers>                                    <DataTrigger Binding="{Binding IsHidden}" Value="True">                                        <Setter Property="Visibility" Value="Collapsed" />                                    </DataTrigger>                                </Style.Triggers>                            </Style>                        </DataGrid.RowStyle>                        <i:Interaction.Triggers>                            <i:EventTrigger EventName="SelectionChanged">                                <cal:ActionMessage MethodName="ParamGridSelectionChangedB" />                            </i:EventTrigger>                        </i:Interaction.Triggers>                        <DataGrid.Columns>                            <!--<DataGridTemplateColumn Width="60" Header="ToLeft">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <Button                                            Width="55"                                            Height="25"                                            Padding="0"                                            Content="<"                                            Visibility="{Binding CopyVisibility}">                                            <i:Interaction.Triggers>                                                <i:EventTrigger EventName="Click">                                                    <cal:ActionMessage MethodName="ParamCopyToLeft">                                                        <cal:Parameter Value="{Binding}" />                                                    </cal:ActionMessage>                                                </i:EventTrigger>                                            </i:Interaction.Triggers>                                        </Button>                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                            </DataGridTemplateColumn>-->                            <DataGridTemplateColumn                                Width="160"                                CanUserSort="True"                                Header="ParaName"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="1,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding ParamName}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                            <DataGridTemplateColumn                                Width="*"                                CanUserSort="True"                                Header="ParaValue"                                IsReadOnly="True">                                <DataGridTemplateColumn.CellTemplate>                                    <DataTemplate>                                        <TextBlock                                            Margin="1,0"                                            HorizontalAlignment="Left"                                            VerticalAlignment="Center"                                            Foreground="{DynamicResource FG_Black}"                                            Text="{Binding ParamValue}"                                            ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />                                    </DataTemplate>                                </DataGridTemplateColumn.CellTemplate>                                <DataGridTemplateColumn.CellStyle>                                    <Style TargetType="DataGridCell">                                        <Setter Property="Background" Value="{Binding Path=Background}" />                                    </Style>                                </DataGridTemplateColumn.CellStyle>                            </DataGridTemplateColumn>                        </DataGrid.Columns>                    </DataGrid>                </Grid>            </Border>        </Grid>    </Grid></UserControl>
 |