2026-01-26 18:56:53 +09:00

131 lines
7.5 KiB
XML

<UserControl x:Class="FlexAttach.Devices.FlexAcsIOView"
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:local="clr-namespace:FlexAttach.Devices"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
d:DataContext="{d:DesignInstance Type=local:FlexAcsIOViewModel}"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<i:Interaction.Triggers>
<i:PropertyChangedTrigger Binding="{Binding IsVisible, ElementName=uc}">
<i:InvokeCommandAction Command="{Binding CMD_VisibleChanged}" CommandParameter="{Binding IsVisible, ElementName=uc}"/>
</i:PropertyChangedTrigger>
</i:Interaction.Triggers>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="600"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid Visibility="Collapsed">
<!--<Grid.Resources>
<Style TargetType="TextBlock">
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Margin" Value="16 4 2 4"/>
</Style>
<Style TargetType="TextBox">
<Setter Property="TextAlignment" Value="Right"/>
<Setter Property="Margin" Value="0 4"/>
</Style>
</Grid.Resources>-->
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Input Name : "/>
<TextBlock Grid.Column="1" Text="{Binding SelIn.Name}" HorizontalAlignment="Left"/>
<TextBlock Grid.Column="2" Text="Address : "/>
<TextBox Grid.Column="3" Width="40" Text="{Binding SelIn.Addr}" Margin="0 4 10 4"/>
<TextBlock Grid.Column="4" Text="Value : "/>
<TextBox Grid.Column="5" Width="40" Text="{Binding SelIn.Value}" Margin="0 4 10 4"/>
<Button Grid.Column="6" Content="Read" Margin="8 4 4 4" Padding="4 0" Command="{Binding CmdGetValue}" Visibility="Collapsed"/>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="Output Name : "/>
<TextBlock Grid.Column="1" Text="{Binding SelOut.Name}" HorizontalAlignment="Left"/>
<TextBlock Grid.Column="2" Text="Address : "/>
<TextBox Grid.Column="3" Width="40" Text="{Binding SelOut.Addr}" Margin="0 4 10 4"/>
<TextBlock Grid.Column="4" Text="Value : "/>
<TextBox Grid.Column="5" Width="40" Text="{Binding SelOut.Value}" Margin="0 4 10 4"/>
<Button Grid.Column="6" Content="Read" Margin="8 4 4 4" Padding="4 0" Command="{Binding CmdGetValue}" Visibility="Collapsed"/>
<Button Grid.Column="7" Content="Write" Margin="4" Padding="4 0" Command="{Binding CmdSetValue}" Visibility="Visible"/>
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<DockPanel Grid.Column="0">
<TextBlock Text="Input" DockPanel.Dock="Top" Margin="4 10 4 4"/>
<DockPanel DockPanel.Dock="Top" HorizontalAlignment="Right" Margin="8 -10">
<TextBlock Text="Search" FontSize="10"/>
<TextBox Width="100" FontSize="10" Text="{Binding InSearch}"/>
</DockPanel>
<DataGrid ItemsSource="{Binding BitInputView}"
SelectedItem="{Binding SelIn}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
IsReadOnly="True"
VerticalScrollBarVisibility="Auto">
<DataGrid.Columns>
<DataGridTextColumn Width="auto" Header="Addr" Binding="{Binding Addr, StringFormat={}0x{0:X}}"/>
<DataGridTextColumn Width="auto" Header="Node" Binding="{Binding Node}"/>
<DataGridTextColumn Width="auto" Header="Bit" Binding="{Binding Bit}"/>
<DataGridTextColumn Width="auto" Header="Value" Binding="{Binding Value}"/>
<DataGridTextColumn Width="*" Header="Name" Binding="{Binding Name}"/>
</DataGrid.Columns>
</DataGrid>
</DockPanel>
<DockPanel Grid.Column="1">
<TextBlock Text="Output" DockPanel.Dock="Top" Margin="4 10 4 4"/>
<DockPanel DockPanel.Dock="Top" HorizontalAlignment="Right" Margin="8 -10">
<TextBlock Text="Search" FontSize="10"/>
<TextBox Width="100" FontSize="10" Text="{Binding OutSearch}"/>
</DockPanel>
<DataGrid Grid.Column="1" ItemsSource="{Binding BitOutputView}"
SelectedItem="{Binding SelOut}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
IsReadOnly="True"
PreviewMouseDoubleClick="DataGrid_PreviewMouseDoubleClick"
VerticalScrollBarVisibility="Auto">
<DataGrid.Columns>
<DataGridTextColumn Width="auto" Header="Addr" Binding="{Binding Addr, StringFormat={}0x{0:X}}"/>
<DataGridTextColumn Width="auto" Header="Node" Binding="{Binding Node}"/>
<DataGridTextColumn Width="auto" Header="Bit" Binding="{Binding Bit}"/>
<DataGridTextColumn Width="auto" Header="Value" Binding="{Binding Value}"/>
<DataGridTextColumn Width="*" Header="Name" Binding="{Binding Name}"/>
</DataGrid.Columns>
</DataGrid>
</DockPanel>
</Grid>
</Grid>
</UserControl>