Files
effector.plugin.fivelakes/Effector.Plugin.FiveLakes/MachinePage/MachinePageV.xaml
T
Emmanuele Sassi 44815f86fa - aggiunta gestione ddt con parametri e swing
- aggiunto timer per csv output
- implementata gestione calcolo porte uguali una sola volta
- gestita barra caricamento calcolo porta prima di mandarlo a macchina
- gestita barra di caricamento durante verifica porte
2025-01-23 17:29:46 +01:00

1152 lines
57 KiB
XML

<Grid x:Class="MachinePageV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Effector.Plugin.FiveLakes"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="950" d:DesignWidth="1600">
<Grid.Resources>
<local:StringToVisibilityConverter x:Key="StringToVisibilityConverter"/>
<local:StringToMachineStateConverter x:Key="StringToMachineStateConverter"/>
<local:StringToDDFCalcStateConverter x:Key="StringToDDFCalcStateConverter"/>
<local:DDFCalcStateToVisibilityConverter x:Key="DDFCalcStateToVisibilityConverter"/>
<local:StringToNewDoorStateConverter x:Key="StringToNewDoorStateConverter"/>
<local:StringToBooleanConverter x:Key="StringToBooleanConverter"/>
<local:StringToBackgroundConverter x:Key="StringToBackgroundConverter"/>
<local:DoorToVisibilityConverter x:Key="DoorToVisibilityConverter"/>
<local:StringToStyleConverter x:Key="StringToStyleConverter"/>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Lista variabili-->
<ItemsControl ItemsSource="{Binding VariableList}"
Visibility="{Binding VariableList_Visibility}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="150"/>
<ColumnDefinition Width="50"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding sName}"/>
<TextBlock Text=" ("/>
<TextBlock Text="{Binding sIndex}"/>
<TextBlock Text=")"/>
</StackPanel>
<TextBlock Grid.Column="1"
Text="{Binding sValue}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<Grid Grid.Column="1"
VerticalAlignment="Center"
Visibility="{Binding MachineCommands_Visibility}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="20"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="DDF Calc State"/>
<TextBlock Grid.Column="2"
Grid.Row="0"
Text="{Binding nDDfCalcState, Converter={StaticResource StringToDDFCalcStateConverter}}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="New Door State"/>
<TextBlock Grid.Column="2"
Grid.Row="1"
Text="{Binding nNewDoorState, Converter={StaticResource StringToNewDoorStateConverter}}"/>
</Grid>
<Grid Grid.Row="1"
VerticalAlignment="Center">
<Grid.Resources>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!--Bottoni di debug-->
<Grid Grid.Column="1"
Visibility="{Binding MachineCommands_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<!--M1-->
<Grid Grid.Column="1"
Grid.ColumnSpan="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Reset-->
<GroupBox Header="Reset"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[13].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1365,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1365,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Mast-->
<GroupBox Grid.Column="2"
Header="Master"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[14].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1366,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1366,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Start-->
<GroupBox Grid.Column="4"
Header="Start"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[15].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1367,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1367,1"/>
</Grid>
</Grid>
</GroupBox>
</Grid>
<!--M2-->
<Grid Grid.Column="5"
Grid.ColumnSpan="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Reset-->
<GroupBox Header="Reset"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[37].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1365,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1365,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Mast-->
<GroupBox Grid.Column="2"
Header="Master"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[38].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1366,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1366,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Start-->
<GroupBox Grid.Column="4"
Header="Start"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[39].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1367,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1367,1"/>
</Grid>
</Grid>
</GroupBox>
</Grid>
</Grid>
<!--Gestori macchine-->
<Grid Grid.Column="1"
Grid.Row="1"
Visibility="{Binding MachineCommands_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="2">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[12].sValue, Converter={StaticResource StringToMachineStateConverter}}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Button Grid.Row="1"
Content="Initialize"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,1"
Style="{StaticResource Advancement_Button}"/>
<StackPanel Grid.Row="2"
Orientation="Horizontal"
HorizontalAlignment="Center">
<Button Content="Start&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="1,1"
Style="{StaticResource Advancement_Button}"/>
<Button Content="End&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="1,2"
Style="{StaticResource Advancement_Button}"/>
</StackPanel>
<Grid Grid.Row="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="Sent 1"/>
<CheckBox Grid.Column="1"
Grid.Row="0"
IsChecked="{Binding VariableList[10].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Sent 2"/>
<CheckBox Grid.Column="1"
Grid.Row="1"
IsChecked="{Binding VariableList[11].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
</Grid>
</Grid>
<Grid Grid.Column="6">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[36].sValue, Converter={StaticResource StringToMachineStateConverter}}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Button Grid.Row="1"
Content="Initialize"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,1"
Style="{StaticResource Advancement_Button}"/>
<StackPanel Grid.Row="2"
Orientation="Horizontal"
HorizontalAlignment="Center">
<Button Content="Start&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="2,1"
Style="{StaticResource Advancement_Button}"/>
<Button Content="End&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="2,2"
Style="{StaticResource Advancement_Button}"/>
</StackPanel>
<Grid Grid.Row="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="Sent 1"/>
<CheckBox Grid.Column="1"
Grid.Row="0"
IsChecked="{Binding VariableList[34].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Sent 2"/>
<CheckBox Grid.Column="1"
Grid.Row="1"
IsChecked="{Binding VariableList[35].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
</Grid>
</Grid>
</Grid>
<!--Bottoni avanzamento-->
<Grid Grid.Column="1"
Grid.Row="2"
Visibility="{Binding MachineCommands_Visibility}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="18.7*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<Button Content="Load Door&#x0d;&#x0a;On M1S0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,3,901.0,1;1,2,980,1"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="2"
Content="Unload Door&#x0d;&#x0a;From M2S4"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,2,984,0;2,1,1364,0"
Style="{StaticResource Advancement_Button}"/>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2.8*"/>
</Grid.ColumnDefinitions>
<Button Grid.Column="1"
Content="Go To&#x0d;&#x0a;M1S1"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1360/1,2,980;1,3,901.0->1,1,1361/1,2,981"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="2"
Content="Go To&#x0d;&#x0a;M1S2"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1361/1,2,981->1,1,1362/1,2,982"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="4"
Content="Go To&#x0d;&#x0a;M1S3"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1362/1,2,982->1,1,1363/1,2,983"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="5"
Content="Go To&#x0d;&#x0a;M1S4"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1363/1,2,983->1,1,1364;2,1,1360/1,2,984;2,2,980"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="7"
Content="Go To&#x0d;&#x0a;M2S1"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1360;1,1,1364/1,2,984;2,2,980->2,1,1361/2,2,981"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="8"
Content="Go To&#x0d;&#x0a;M2S2"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1361/2,2,981->2,1,1362/2,2,982"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="10"
Content="Go To&#x0d;&#x0a;M2S3"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1362/2,2,982->2,1,1363/2,2,983"
Style="{StaticResource Advancement_Button}"/>
<Button Grid.Column="11"
Content="Go To&#x0d;&#x0a;M2S4"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1363/2,2,983->2,1,1364/2,2,984"
Style="{StaticResource Advancement_Button}"/>
</Grid>
</Grid>
<!--Intestazioni-->
<Grid Grid.Row="3"
Visibility="{Binding VariableOnDraw_Visibility}">
<Grid.RowDefinitions>
<RowDefinition Height="0.7*"/>
<RowDefinition Height="0.3*"/>
<RowDefinition Height="0.7*"/>
<RowDefinition Height="0.6*"/>
<RowDefinition Height="0.3*"/>
<RowDefinition Height="0.6*"/>
<RowDefinition Height="0.7*"/>
<RowDefinition Height="0.3*"/>
<RowDefinition Height="0.7*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="1"
Text="Sensors"/>
<TextBlock Grid.Row="4"
Text="Door Index"/>
<TextBlock Grid.Row="7"
Text="Door Presence"/>
</Grid>
<!--Immagine macchina-->
<Image Grid.Column="1"
Grid.Row="3"
Source="{Binding sMachineImagePath}"
Stretch="Uniform"/>
<!--TextBox variabili-->
<Grid Grid.Column="1"
Grid.Row="3"
Visibility="{Binding VariableOnDraw_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1.7*"/>
<RowDefinition Height="1.5*"/>
<RowDefinition Height="1.7*"/>
</Grid.RowDefinitions>
<Border Grid.Column="0"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="{Binding VariableList[5].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="0"
Grid.Row="2"
Text="{Binding VariableList[0].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="1"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="{Binding VariableList[6].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="1"
Grid.Row="2"
Text="{Binding VariableList[1].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="2"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="2"
Grid.Row="1"
Text="{Binding VariableList[7].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="2"
Grid.Row="2"
Text="{Binding VariableList[2].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="3"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="3"
Grid.Row="1"
Text="{Binding VariableList[8].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="3"
Grid.Row="2"
Text="{Binding VariableList[3].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="4"
Grid.Row="1"
Style="{StaticResource Table}"/>
<StackPanel Grid.Column="4"
Grid.Row="1"
Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<TextBlock Text="{Binding VariableList[9].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Text="{Binding VariableList[29].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</StackPanel>
<StackPanel Grid.Column="4"
Grid.Row="2"
Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<TextBlock Text="{Binding VariableList[4].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Text="{Binding VariableList[24].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</StackPanel>
<Border Grid.Column="5"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="5"
Grid.Row="1"
Text="{Binding VariableList[30].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="5"
Grid.Row="2"
Text="{Binding VariableList[25].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="6"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="6"
Grid.Row="1"
Text="{Binding VariableList[31].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="6"
Grid.Row="2"
Text="{Binding VariableList[26].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="7"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="7"
Grid.Row="1"
Text="{Binding VariableList[32].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="7"
Grid.Row="2"
Text="{Binding VariableList[27].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="8"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="8"
Grid.Row="1"
Text="{Binding VariableList[33].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="8"
Grid.Row="2"
Text="{Binding VariableList[28].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Grid>
<!--Sensori-->
<Grid Grid.Column="1"
Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.6*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.6*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1.7*"/>
<RowDefinition Height="1.5*"/>
<RowDefinition Height="1.7*"/>
</Grid.RowDefinitions>
<Ellipse Grid.Column="1"
Fill="{Binding VariableList[16].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="4"
Fill="{Binding VariableList[17].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="7"
Fill="{Binding VariableList[18].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="9"
Fill="{Binding VariableList[19].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="11"
Fill="{Binding VariableList[20].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="13"
Fill="{Binding VariableList[21].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="16"
Fill="{Binding VariableList[22].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="19"
Fill="{Binding VariableList[23].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="22"
Fill="{Binding VariableList[41].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="25"
Fill="{Binding VariableList[42].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="27"
Fill="{Binding VariableList[43].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="29"
Fill="{Binding VariableList[44].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="31"
Fill="{Binding VariableList[45].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="34"
Fill="{Binding VariableList[46].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="37"
Fill="{Binding VariableList[47].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
</Grid>
<!--Porte-->
<Grid Grid.Column="1"
Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.7*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.7*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1.9*"/>
<RowDefinition Height="1.1*"/>
<RowDefinition Height="1.9*"/>
</Grid.RowDefinitions>
<Border Grid.Column="1"
Grid.Row="1"
Visibility="{Binding VariableList[0].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[0].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[0].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ProgressBar Grid.Row="1"
Value="{Binding dDdfCalcValue, Mode=OneWay}"
Height="20"
Maximum="100"
Visibility="{Binding nDDfCalcState, Converter={StaticResource DDFCalcStateToVisibilityConverter}}"/>
</Grid>
<Border Grid.Column="3"
Grid.Row="1"
Visibility="{Binding VariableList[1].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[1].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[1].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="5"
Grid.Row="1"
Visibility="{Binding VariableList[2].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[2].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[2].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="7"
Grid.Row="1"
Visibility="{Binding VariableList[3].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[3].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[3].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="9"
Grid.Row="1"
Visibility="{Binding VariableList[24].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[24].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[4].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="11"
Grid.Row="1"
Visibility="{Binding VariableList[25].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[25].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[5].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="13"
Grid.Row="1"
Visibility="{Binding VariableList[26].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[26].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[6].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="15"
Grid.Row="1"
Visibility="{Binding VariableList[27].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[27].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[7].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="17"
Grid.Row="1"
Visibility="{Binding VariableList[28].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{Binding VariableList[28].sValue, Converter={StaticResource StringToStyleConverter}}">
<TextBlock Text="{Binding DoorOnMachineArray[8].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
</Grid>
<!--Intestazione descrizione porte-->
<Grid Grid.Row="4">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="Id"/>
<!--<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Circular Index"/>-->
<TextBlock Grid.Column="0"
Grid.Row="2"
Text="State"/>
<TextBlock Grid.Column="0"
Grid.Row="3"
Text="DDF Name"/>
<!--<TextBlock Grid.Column="0"
Grid.Row="4"
Text="CSV Name"/>-->
<!--<TextBlock Grid.Column="0"
Grid.Row="5"
Text="DoorCode"/>
<TextBlock Grid.Column="0"
Grid.Row="6"
Text="DoorDescription"/>
<TextBlock Grid.Column="0"
Grid.Row="7"
Text="M1 CN Path"/>
<TextBlock Grid.Column="0"
Grid.Row="8"
Text="M2 CN Path"/>-->
<TextBlock Grid.Column="0"
Grid.Row="9"
Text="Load Time"/>
<TextBlock Grid.Column="0"
Grid.Row="10"
Text="Machining 1 Start"/>
<TextBlock Grid.Column="0"
Grid.Row="11"
Text="Machining 1 End"/>
<TextBlock Grid.Column="0"
Grid.Row="12"
Text="Machining 2 Start"/>
<TextBlock Grid.Column="0"
Grid.Row="13"
Text="Machining 2 End"/>
<TextBlock Grid.Column="0"
Grid.Row="14"
Text="UnloadTime"/>
</Grid>
<!--Descrizione porte-->
<ItemsControl Grid.Column="1"
Grid.Row="4"
ItemsSource="{Binding DoorOnMachineArray}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="9"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Center"
Visibility="{Binding Converter={StaticResource DoorToVisibilityConverter}}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="1"
Grid.Row="0"
Text="{Binding nId}"/>
<!--<TextBlock Grid.Column="1"
Grid.Row="1"
Text="{Binding nCircIndex}"/>-->
<TextBlock Grid.Column="1"
Grid.Row="2"
Text="{Binding nState}"/>
<TextBlock Grid.Column="1"
Grid.Row="3"
Text="{Binding sDDFName}"/>
<!--<TextBlock Grid.Column="1"
Grid.Row="4"
Text="{Binding sCSVName}"/>-->
<!--<TextBlock Grid.Column="1"
Grid.Row="5"
Text="{Binding sDoorCode}"/>
<TextBlock Grid.Column="1"
Grid.Row="6"
Text="{Binding sDoorDescription}"/>
<TextBlock Grid.Column="1"
Grid.Row="7"
Text="{Binding sM1CNPath}"/>
<TextBlock Grid.Column="1"
Grid.Row="8"
Text="{Binding sM2CNPath}"/>-->
<TextBlock Grid.Column="1"
Grid.Row="9"
Text="{Binding sLoadTime}"/>
<TextBlock Grid.Column="1"
Grid.Row="10"
Text="{Binding sMachining1Start}"/>
<TextBlock Grid.Column="1"
Grid.Row="11"
Text="{Binding sMachining1End}"/>
<TextBlock Grid.Column="1"
Grid.Row="12"
Text="{Binding sMachining2Start}"/>
<TextBlock Grid.Column="1"
Grid.Row="13"
Text="{Binding sMachining2End}"/>
<TextBlock Grid.Column="1"
Grid.Row="14"
Text="{Binding sUnloadTime}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
<!--Lista circolare porte-->
<Grid Grid.Row="2"
Visibility="{Binding DoorCircList_Visibility}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="Id"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Circular Index"/>
<TextBlock Grid.Column="0"
Grid.Row="2"
Text="State"/>
<TextBlock Grid.Column="0"
Grid.Row="3"
Text="Position"/>
<TextBlock Grid.Column="0"
Grid.Row="4"
Text="DDF Name"/>
<!--<TextBlock Grid.Column="0"
Grid.Row="5"
Text="CSV Name"/>-->
<!--<TextBlock Grid.Column="0"
Grid.Row="6"
Text="DoorCode"/>-->
<!--<TextBlock Grid.Column="0"
Grid.Row="7"
Text="DoorDescription"/>-->
<!--<TextBlock Grid.Column="0"
Grid.Row="8"
Text="M1 CN Path"/>
<TextBlock Grid.Column="0"
Grid.Row="9"
Text="M2 CN Path"/>-->
<TextBlock Grid.Column="0"
Grid.Row="10"
Text="Load Time"/>
<TextBlock Grid.Column="0"
Grid.Row="11"
Text="Machining 1 Start"/>
<TextBlock Grid.Column="0"
Grid.Row="12"
Text="Machining 1 End"/>
<TextBlock Grid.Column="0"
Grid.Row="13"
Text="Machining 2 Start"/>
<TextBlock Grid.Column="0"
Grid.Row="14"
Text="Machining 2 End"/>
<TextBlock Grid.Column="0"
Grid.Row="15"
Text="UnloadTime"/>
</Grid>
<ItemsControl Grid.Column="1"
ItemsSource="{Binding LuaDoorList}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="10"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="1"
Grid.Row="0"
Text="{Binding nId}"/>
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="{Binding nCircIndex}"/>
<TextBlock Grid.Column="1"
Grid.Row="2"
Text="{Binding nState}"/>
<TextBlock Grid.Column="1"
Grid.Row="3"
Text="{Binding nDoorPosition}"/>
<TextBlock Grid.Column="1"
Grid.Row="4"
Text="{Binding sDDFName}"/>
<!--<TextBlock Grid.Column="1"
Grid.Row="5"
Text="{Binding sCSVName}"/>-->
<!--<TextBlock Grid.Column="1"
Grid.Row="6"
Text="{Binding sDoorCode}"/>-->
<!--<TextBlock Grid.Column="1"
Grid.Row="7"
Text="{Binding sDoorDescription}"/>-->
<!--<TextBlock Grid.Column="1"
Grid.Row="8"
Text="{Binding sM1CNPath}"/>
<TextBlock Grid.Column="1"
Grid.Row="9"
Text="{Binding sM2CNPath}"/>-->
<TextBlock Grid.Column="1"
Grid.Row="10"
Text="{Binding sLoadTime}"/>
<TextBlock Grid.Column="1"
Grid.Row="11"
Text="{Binding sMachining1Start}"/>
<TextBlock Grid.Column="1"
Grid.Row="12"
Text="{Binding sMachining1End}"/>
<TextBlock Grid.Column="1"
Grid.Row="13"
Text="{Binding sMachining2Start}"/>
<TextBlock Grid.Column="1"
Grid.Row="14"
Text="{Binding sMachining2End}"/>
<TextBlock Grid.Column="1"
Grid.Row="15"
Text="{Binding sUnloadTime}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
</Grid>
</Grid>
</Grid>