You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

171 lines
13 KiB

<UserControl x:Class="Gumming.PortsView"
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"
mc:Ignorable="d"
xmlns:local="clr-namespace:Gumming"
xmlns:tool="clr-namespace:GummingCommon;assembly=GummingCommon"
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
d:DesignHeight="700" d:DesignWidth="1000"
Background="Transparent"
x:Name="rootControl">
<UserControl.Resources>
<tool:RadioButtonConverter x:Key="RadioConverter"/>
<tool:BooleanToOpacityConverter x:Key="OpacityConverter"/>
<tool:EditorTextConverter x:Key="TextBrushConverter"/>
<tool:EditorBorderConverter x:Key="BorderBrushConverter"/>
<tool:PathTypeToThemeConverter x:Key="PathTypeConverter"/>
<tool:StepStyleConverter x:Key="StepStyleConverter"/>
<DataTemplate x:Key="PortFieldMapping">
<Border Name="ItemBorder" Height="30" BorderThickness="0" BorderBrush="Black">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="200"></ColumnDefinition>
<ColumnDefinition Width="60"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Border BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding PortCode, Mode=TwoWay}" ToolTip="{Binding PositionDist}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="1" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}">
<TextBox Style="{DynamicResource EditTextBoxStyle}" Text="{Binding PortName, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ToolTip="{Binding PortName}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBox>
</Border>
<Border Grid.Column="2" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding GroupType, Mode=TwoWay}" ToolTip="{Binding GroupType}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="3" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding PositionType, Mode=TwoWay}" ToolTip="{Binding PositionType}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="4" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding CardNo, Mode=TwoWay}" ToolTip="{Binding CardNo}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="5" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding NodeId, Mode=TwoWay}" ToolTip="{Binding NodeId}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="6" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding SlotId, Mode=TwoWay}" ToolTip="{Binding SlotId}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="7" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding PortIndex, Mode=TwoWay}" ToolTip="{Binding PortIndex}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="8" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding PortSubIndex, Mode=TwoWay}" ToolTip="{Binding PortSubIndex}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="9" BorderThickness="1,0,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
<TextBlock Text="{Binding PortType, Mode=TwoWay}" ToolTip="{Binding PortType}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" FontSize="14" FontWeight="Bold"></TextBlock>
</Border>
<Border Grid.Column="10" BorderThickness="1,0,1,1" BorderBrush="{DynamicResource BaseBrushBorder}" >
</Border>
</Grid>
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType={x:Type ListViewItem}}, Path=IsSelected}" Value="True">
<Setter TargetName="ItemBorder" Property="Background" Value="#DDD"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</UserControl.Resources>
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"></RowDefinition>
<RowDefinition Height="30"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="5"></RowDefinition>
<RowDefinition Height="30"></RowDefinition>
</Grid.RowDefinitions>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="200"></ColumnDefinition>
<ColumnDefinition Width="60"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="20"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Border BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="端口编号" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="1" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="端口名称" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="2" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="标号" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="3" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="电柜" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="4" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="板卡号" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="5" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="节点" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="6" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="子节点" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="7" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="端口号" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="8" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="子编号" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="9" BorderThickness="1,1,0,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
<TextBlock Text="端口类型" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="2" FontSize="12" Foreground="{DynamicResource FontBrush1}" ></TextBlock>
</Border>
<Border Grid.Column="10" BorderThickness="1,1,1,1" BorderBrush="{DynamicResource BaseBrushBorder}" Background="Transparent" >
</Border>
</Grid>
<ListView x:Name="FieldMappingView" tool:TouchScrolling.IsEnabled="True" Grid.Row="2" ItemTemplate="{DynamicResource PortFieldMapping}" ItemsSource="{Binding HartPorts}"
Template="{DynamicResource ListViewItemMapping}" ItemContainerStyle="{DynamicResource ListViewItemContainerStyle}" BorderThickness="0"
SelectedValue="{Binding NormalDoubleCut}" SelectionMode="Single" Foreground="{DynamicResource FontBrush4}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel></StackPanel>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<tool:ExecuteCommandAction CommandParameter="{Binding SelectedItems, ElementName=FieldMappingView}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</ListView>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="3"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
<ColumnDefinition Width="3"></ColumnDefinition>
<ColumnDefinition Width="80"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Button Grid.Column="4" Margin="2" FontSize="15" Style="{DynamicResource CommonIconButton}" Command="{Binding SavePositionCommand}" Content="保存"></Button>
</Grid>
<Grid Grid.Row="4">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="500"></ColumnDefinition>
</Grid.ColumnDefinitions>
<ContentControl Grid.Column="1" Content="{Binding PagerControlViewer.View}"></ContentControl>
</Grid>
</Grid>
</Grid>
</UserControl>