262 lines
15 KiB
XML

<Page
x:Class="Seyounth.Hyosung.UI.Views.Pages.DataPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Seyounth.Hyosung.UI.Views.Pages"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
xmlns:helpers="clr-namespace:Seyounth.Hyosung.UI.Helpers"
xmlns:models1="clr-namespace:Seyounth.Hyosung.Data.Models;assembly=Seyounth.Hyosung.Data"
x:Name="VarietyPage"
Title="DataPage"
d:DataContext="{d:DesignInstance local:DataPage,
IsDesignTimeCreatable=False}"
d:DesignHeight="450"
d:DesignWidth="800"
ui:Design.Background="{DynamicResource ApplicationBackgroundBrush}"
ui:Design.Foreground="{DynamicResource TextFillColorPrimaryBrush}"
Foreground="{DynamicResource TextFillColorPrimaryBrush}"
ScrollViewer.CanContentScroll="False"
mc:Ignorable="d">
<Page.Resources>
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
<helpers:EnumDescriptionConverter x:Key="EnumDescriptionConverter" />
</Page.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Menu Grid.Row="0">
<ui:MenuItem Header="新增" Command="{Binding ViewModel.AddVarietyCommand}" Icon="{ui:SymbolIcon Add24}" />
</Menu>
<ui:DataGrid x:Name="VarietyDataGrid" Margin="0,0,0,20" AutoGenerateColumns="False"
HeadersVisibility="All"
VerticalContentAlignment="Center"
CanUserAddRows="False"
EnableRowVirtualization="True"
EnableColumnVirtualization="True"
VirtualizingPanel.VirtualizationMode="Recycling"
ScrollViewer.CanContentScroll="True"
AddingNewItem="VarietyDataGrid_AddingNewItem"
CellEditEnding="VarietyDataGrid_CellEditEnding"
ItemsSource="{Binding ViewModel.Varieties, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Grid.Row="1">
<ui:DataGrid.Columns>
<DataGridTextColumn Header="编号"
Binding="{Binding Id}" />
<DataGridTextColumn Width="200" Header="产品编码" Binding="{Binding Code}" />
<DataGridTextColumn Width="60" Header="Lot" Binding="{Binding Lot}" />
<DataGridTextColumn Width="60" Header="规格" Binding="{Binding Specifications}" />
<DataGridTextColumn
Binding="{Binding InnerDiameter }"
Header="内径(D1)"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding OuterDiameter }"
Header="外径(D2)"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding YarnDiameter }"
Header="直径(D3)"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding PaperTubeHeight }"
Header="纸管高(H1)"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding YarnThickness }"
Header="纱线厚(H2)"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding SingleWeight }"
Header="单筒重"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding StackingLayers }"
Header="码层数"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding TotalCount }"
Header="个/托"
Width="Auto" />
<DataGridTemplateColumn Width="180" Header="蜂窝板(中间)">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding MiddlePallet, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Path=ViewModel.HoneyPallets,RelativeSource={RelativeSource AncestorType={x:Type Page},Mode=FindAncestor}}"
DisplayMemberPath="Name">
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="180" Header="蜂窝板(上下)">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding TopAndBottomPallet, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Path=ViewModel.HoneyPallets,RelativeSource={RelativeSource AncestorType={x:Type Page},Mode=FindAncestor}}"
DisplayMemberPath="Name">
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="180" Header="底托">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding Tray, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Path=ViewModel.Trays,RelativeSource={RelativeSource AncestorType={x:Type Page},Mode=FindAncestor}}"
DisplayMemberPath="Name">
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="180" Header="隔板">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding PaperTray, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Path=ViewModel.PaperPallets,RelativeSource={RelativeSource AncestorType={x:Type Page},Mode=FindAncestor}}"
DisplayMemberPath="Name">
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn
Binding="{Binding StackHeadSpec }"
Header="垛头尺寸"
Width="120" />
<DataGridTextColumn
Binding="{Binding StackHeadCount }"
Header="垛头数量"
Width="80" />
<DataGridCheckBoxColumn Header="套箱" Binding="{Binding HasBox}" />
<DataGridTemplateColumn Width="120" Header="顶板">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding NeedTopBoard, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={helpers:EnumBindingSource {x:Type models1:NeedType}}}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ., Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="120" Header="护角">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding NeedAngleBeam, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={helpers:EnumBindingSource {x:Type models1:NeedType}}}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ., Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="120" Header="打带">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding NeedPackStrap, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={helpers:EnumBindingSource {x:Type models1:NeedType}}}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ., Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="120" Header="缠膜">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding NeedFilmWrapping, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={helpers:EnumBindingSource {x:Type models1:NeedType}}}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ., Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="120" Header="覆膜">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox
SelectionChanged="ComboBox_SelectionChanged"
SelectedItem="{Binding NeedFilmCoating, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={helpers:EnumBindingSource {x:Type models1:NeedType}}}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
Text="{Binding ., Converter={StaticResource EnumDescriptionConverter}}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn
Binding="{Binding MasterLabelCount }"
Header="主标签数量"
Width="Auto" />
<DataGridTextColumn
Binding="{Binding SubLabelCount }"
Header="副标签数量"
Width="Auto" />
<DataGridTextColumn Header="毛重"
Binding="{Binding GrossWeight}" />
<DataGridTextColumn Header="净重"
Binding="{Binding NetWeight}" />
<DataGridTextColumn Header="控制号"
Binding="{Binding LastNo}" />
<DataGridTemplateColumn Header="操作">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<ui:Button Appearance="Primary" VerticalAlignment="Center" Margin="10,0,10,0"
Content="保存"
Command="{Binding ElementName=VarietyPage, Path=DataContext.ViewModel.SaveVarietyCommand}"
CommandParameter="{Binding}"
Visibility="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Path=IsEditing, Converter={StaticResource BooleanToVisibilityConverter}}" />
<!-- 删除按钮 -->
<ui:Button VerticalAlignment="Center" Content="删除" Margin="10,0,10,0"
Command="{Binding ElementName=VarietyPage, Path=DataContext.ViewModel.DeleteVarietyCommand}"
CommandParameter="{Binding}" />
<!-- 保存按钮,根据 DataGridRow 的 IsEditing 属性控制可见性 -->
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</ui:DataGrid.Columns>
</ui:DataGrid>
</Grid>
</Page>