155 lines
9.6 KiB
XML
155 lines
9.6 KiB
XML
<UserControl x:Class="AuroraPLC.Views.UCPLCWord"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:msh ="http://metro.mahapps.com/winfx/xaml/controls"
|
|
xmlns:local="clr-namespace:AuroraPLC.Views"
|
|
xmlns:aurora="clr-namespace:Aurora.View;assembly=Aurora"
|
|
xmlns:uic="clr-namespace:AuroraUIComponent;assembly=AuroraUIComponent"
|
|
xmlns:uiControl="clr-namespace:AuroraUIComponent.UserControls;assembly=AuroraUIComponent"
|
|
xmlns:behavior="http://schemas.microsoft.com/xaml/behaviors" d:DataContext="{d:DesignInstance Type=local:UCPLCWordViewModel}"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="830" d:DesignWidth="1700"
|
|
Background="{StaticResource MahApps.Brushes.ThemeBackground}" FontSize="12" Padding="10 10"
|
|
x:Name="uc">
|
|
|
|
<UserControl.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.MergedDictionaries>
|
|
<aurora:SharedResourceDictionary Source="pack://application:,,,/AuroraUIComponent;component/Style/Generic.xaml"/>
|
|
</ResourceDictionary.MergedDictionaries>
|
|
<!--<Style x:Key="CenterGridHeaderStyle" TargetType="DataGridColumnHeader">
|
|
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
|
<Setter Property="Foreground" Value="Black" />
|
|
</Style>-->
|
|
</ResourceDictionary>
|
|
</UserControl.Resources>
|
|
<behavior:Interaction.Triggers>
|
|
<behavior:PropertyChangedTrigger Binding="{Binding IsVisible, ElementName=uc}">
|
|
<behavior:InvokeCommandAction Command="{Binding CMD_VisibleChanged}" CommandParameter="{Binding IsVisible, ElementName=uc}"/>
|
|
</behavior:PropertyChangedTrigger>
|
|
</behavior:Interaction.Triggers>
|
|
|
|
<Grid Margin="5">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"/>
|
|
<RowDefinition/>
|
|
<RowDefinition Height="auto"/>
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Word Input Header -->
|
|
<Border Grid.Column="0" Margin="0" Style="{StaticResource StGroupBorder}">
|
|
<Grid>
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock VerticalAlignment="Center"
|
|
Foreground="{StaticResource MahApps.Brushes.ThemeForeground}" Margin="20 5"
|
|
FontSize="20" FontWeight="Bold"
|
|
Text="{Binding [WordInputsTitle], Source={StaticResource langTokens}, FallbackValue=WordInput}"/>
|
|
</StackPanel>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<!-- Word Output Header -->
|
|
<Border Grid.Column="1" Margin="10 0 0 0" Style="{StaticResource StGroupBorder}">
|
|
<Grid>
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock VerticalAlignment="Center"
|
|
Foreground="{StaticResource MahApps.Brushes.ThemeForeground}" Margin="20 5"
|
|
FontSize="20" FontWeight="Bold"
|
|
Text="{Binding [WordOutputsTitle], Source={StaticResource langTokens}, FallbackValue=WordOutput}"/>
|
|
</StackPanel>
|
|
<StackPanel Margin="5" Orientation="Horizontal" HorizontalAlignment="Right">
|
|
<GroupBox Header="{Binding [ChangeValue], Source={StaticResource langTokens}, FallbackValue=ChangeValue}" VerticalAlignment="Stretch">
|
|
<StackPanel Orientation="Horizontal" Margin="10 2">
|
|
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center"
|
|
Foreground="White"
|
|
Text="{Binding SelectedWordAddress}"/>
|
|
<TextBox x:Name="txtWordValue" Width="100" Height="40"
|
|
Text="{Binding WORD_DATA, StringFormat={}{0:0}}"/>
|
|
<Button Margin="5 0"
|
|
Height="40" Padding="20 0"
|
|
Command="{Binding CMD_ChangeValue}"
|
|
Content="{Binding [Change], Source={StaticResource langTokens}, FallbackValue=Change}"
|
|
IsEnabled="{Binding ChangeButtonEnable}"
|
|
Style="{StaticResource StButtonAccent}"
|
|
FontSize="11"/>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
</StackPanel>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<!-- Word Input Data -->
|
|
<DataGrid Grid.Row="1" ItemsSource="{Binding DigitalInputs}" Margin="0 10 0 0"
|
|
SelectedItem="{Binding SelectedInputItem}"
|
|
AutoGenerateColumns="False" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
|
|
CanUserAddRows="False" CanUserDeleteRows="False" IsReadOnly="True" CanUserSortColumns="false"
|
|
BorderThickness="1"
|
|
DataGrid.RowStyle ="{StaticResource RowStyle}" ColumnHeaderStyle="{StaticResource StDataGridHeaderStyle}">
|
|
<DataGrid.Columns>
|
|
<DataGridTextColumn Width="1*" Header="{Binding [Address], Source={StaticResource langTokens}}" Binding="{Binding Address}" />
|
|
<DataGridTextColumn Width="5*" Header="{Binding [Description], Source={StaticResource langTokens}}" Binding="{Binding Description}"/>
|
|
<DataGridTextColumn Width="1*" Header="{Binding [Status], Source={StaticResource langTokens}}" Binding="{Binding Word}"/>
|
|
</DataGrid.Columns>
|
|
</DataGrid>
|
|
|
|
<!-- Word Output Data -->
|
|
<DataGrid Grid.Row="1" Grid.Column="1" ItemsSource="{Binding DigitalOutputs}" SelectedItem="{Binding SelectedOutputItem}" Margin="10 10 0 0"
|
|
AutoGenerateColumns="False" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
|
|
CanUserAddRows="False" CanUserDeleteRows="False" IsReadOnly="True" CanUserSortColumns="false" BorderThickness="1"
|
|
DataGrid.RowStyle ="{StaticResource RowStyle}" ColumnHeaderStyle="{StaticResource StDataGridHeaderStyle}">
|
|
<DataGrid.Columns>
|
|
<DataGridTextColumn Width="1*" Header="{Binding [Address], Source={StaticResource langTokens}}" Binding="{Binding Address}"/>
|
|
<DataGridTextColumn Width="5*" Header="{Binding [Description], Source={StaticResource langTokens}}" Binding="{Binding Description}"/>
|
|
<DataGridTextColumn Width="1*" Header="{Binding [Status], Source={StaticResource langTokens}}" Binding="{Binding Word}"/>
|
|
</DataGrid.Columns>
|
|
</DataGrid>
|
|
|
|
|
|
<!-- WordInput group box -->
|
|
<GroupBox Header="{Binding [Type], Source={StaticResource langTokens}, FallbackValue=Type}" Grid.Row="2" Grid.Column="0" Margin="0 10 0 0" >
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="3*"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<uiControl:UCRadioGroup Grid.Column="0" GroupBoxName="InputDataViewType"
|
|
DefaultChecked ="0"
|
|
ItemList="{Binding Path= DataContext.DataViewTypeList, ElementName=uc}"
|
|
SelectedItem="{Binding DataContext.DataViewTypeInput, ElementName=uc}"
|
|
HorizontalAlignment="Stretch" GroupMargin ="30,0"
|
|
PanelType="Uniform"/>
|
|
<CheckBox Content="Hex" IsChecked="{Binding IsCheckedDataViewHexInput, FallbackValue= false}"
|
|
Grid.Column="1"
|
|
VerticalAlignment="Center" HorizontalAlignment="Center"
|
|
msh:CheckBoxHelper.CheckBackgroundFillChecked="{DynamicResource BLGRedCustomDark}"/>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
<!-- WordOutput group box -->
|
|
<GroupBox Header="{Binding [Type], Source={StaticResource langTokens}, FallbackValue=Type}" Grid.Row="2" Grid.Column="1" Margin="10 10 0 0">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="3*"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<uiControl:UCRadioGroup Grid.Column="0" GroupBoxName="OutputDataViewType"
|
|
DefaultChecked ="0"
|
|
GroupMargin ="30,0"
|
|
ItemList="{Binding Path= DataContext.DataViewTypeList, ElementName=uc}"
|
|
SelectedItem="{Binding DataContext.DataViewTypeOutput, ElementName=uc}"
|
|
PanelType="Uniform"/>
|
|
<CheckBox Content="Hex" IsChecked="{Binding IsCheckedDataViewHexOutput, FallbackValue= false, Mode=TwoWay}"
|
|
Grid.Column="1"
|
|
VerticalAlignment="Center" HorizontalAlignment="Center"
|
|
msh:CheckBoxHelper.CheckBackgroundFillChecked="{DynamicResource BLGRedCustomDark}"/>
|
|
</Grid>
|
|
</GroupBox>
|
|
</Grid>
|
|
</UserControl>
|