KeyPartManagementView.xaml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <UserControl x:Class="LocalhostMES.Views.Tabs.KeyPartManagementView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:prism="http://prismlibrary.com/"
  7. xmlns:enums="clr-namespace:LocalhostMES.Enums"
  8. prism:ViewModelLocator.AutoWireViewModel="True"
  9. mc:Ignorable="d"
  10. d:DesignHeight="480" d:DesignWidth="780">
  11. <Grid Margin="12">
  12. <Grid.RowDefinitions>
  13. <RowDefinition Height="Auto" />
  14. <RowDefinition Height="Auto" />
  15. <RowDefinition Height="Auto" />
  16. <RowDefinition Height="*" />
  17. <RowDefinition Height="Auto" />
  18. </Grid.RowDefinitions>
  19. <TextBlock Grid.Row="0" Text="关键件信息" FontSize="20" FontWeight="Bold" HorizontalAlignment="Center" Margin="0,0,0,12" />
  20. <Border Grid.Row="1"
  21. BorderBrush="{DynamicResource Win11BorderBrush}"
  22. BorderThickness="1"
  23. CornerRadius="10"
  24. Padding="10"
  25. Margin="0,0,0,8"
  26. Background="{DynamicResource Win11CardBrush}">
  27. <Grid>
  28. <Grid.ColumnDefinitions>
  29. <ColumnDefinition Width="Auto" />
  30. <ColumnDefinition Width="*" />
  31. <ColumnDefinition Width="Auto" />
  32. <ColumnDefinition Width="*" />
  33. <ColumnDefinition Width="Auto" />
  34. <ColumnDefinition Width="100" />
  35. </Grid.ColumnDefinitions>
  36. <Grid.RowDefinitions>
  37. <RowDefinition Height="Auto" />
  38. </Grid.RowDefinitions>
  39. <Label Grid.Row="0" Grid.Column="0">工站类型:</Label>
  40. <ComboBox Grid.Row="0" Grid.Column="1" Margin="4,0" MinWidth="120"
  41. ItemsSource="{enums:EnumBindingSource EnumType={x:Type enums:KeyPartStationType}}"
  42. SelectedItem="{Binding NewPart.StationType}" />
  43. <Label Grid.Row="0" Grid.Column="2">关键件号:</Label>
  44. <TextBox Grid.Row="0" Grid.Column="3" Margin="4,0" MinWidth="160"
  45. Text="{Binding NewPart.PartNum, UpdateSourceTrigger=PropertyChanged}" />
  46. <Label Grid.Row="0" Grid.Column="4">数量:</Label>
  47. <TextBox Grid.Row="0" Grid.Column="5" Margin="4,0"
  48. Text="{Binding NewPart.PartQty, UpdateSourceTrigger=PropertyChanged}" />
  49. </Grid>
  50. </Border>
  51. <StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,0,0,8">
  52. <Button Content="添加" Style="{StaticResource SuccessButtonStyle}" Command="{Binding AddPartInfoCommand}" />
  53. <Button Content="刷新" Style="{StaticResource SecondaryButtonStyle}" Command="{Binding RefPartInfoCommand}" />
  54. <Button Content="删除所选" Style="{StaticResource DangerButtonStyle}" Command="{Binding DeletePartInfoCommand}" />
  55. </StackPanel>
  56. <DataGrid Grid.Row="3" ItemsSource="{Binding PartInfos}" SelectedItem="{Binding SelectPart}" SelectionMode="Single"
  57. AutoGenerateColumns="False" CanUserAddRows="False" IsReadOnly="True" GridLinesVisibility="None"
  58. HeadersVisibility="Column" Margin="0,0,0,8">
  59. <DataGrid.Resources>
  60. <Style TargetType="DataGridRow">
  61. <Style.Triggers>
  62. <Trigger Property="IsSelected" Value="True">
  63. <Setter Property="Background" Value="#E3F2FD" />
  64. <Setter Property="BorderBrush" Value="#2196F3" />
  65. </Trigger>
  66. </Style.Triggers>
  67. </Style>
  68. <Style TargetType="DataGridColumnHeader">
  69. <Setter Property="Background" Value="#2196F3" />
  70. <Setter Property="Foreground" Value="White" />
  71. <Setter Property="FontWeight" Value="Bold" />
  72. <Setter Property="Padding" Value="10,5" />
  73. <Setter Property="HorizontalContentAlignment" Value="Center" />
  74. </Style>
  75. </DataGrid.Resources>
  76. <DataGrid.Columns>
  77. <DataGridTextColumn Header="工站类型" Binding="{Binding StationType}" Width="100" />
  78. <DataGridTextColumn Header="关键件号" Binding="{Binding PartNum}" Width="*" MinWidth="160" />
  79. <DataGridTextColumn Header="数量" Binding="{Binding PartQty}" Width="80">
  80. <DataGridTextColumn.ElementStyle>
  81. <Style TargetType="TextBlock">
  82. <Setter Property="HorizontalAlignment" Value="Right" />
  83. <Setter Property="Margin" Value="0,0,10,0" />
  84. </Style>
  85. </DataGridTextColumn.ElementStyle>
  86. </DataGridTextColumn>
  87. <DataGridTemplateColumn Header="操作" Width="90">
  88. <DataGridTemplateColumn.CellTemplate>
  89. <DataTemplate>
  90. <Button Content="删除" Padding="5,2" Margin="2,0" Background="#F44336" Foreground="White"
  91. Command="{Binding DataContext.DeletePartRowCommand, RelativeSource={RelativeSource AncestorType=DataGrid}}"
  92. CommandParameter="{Binding}" />
  93. </DataTemplate>
  94. </DataGridTemplateColumn.CellTemplate>
  95. </DataGridTemplateColumn>
  96. </DataGrid.Columns>
  97. </DataGrid>
  98. <StatusBar Grid.Row="4">
  99. <StatusBarItem>
  100. <TextBlock>
  101. <Run Text="记录总数:" />
  102. <Run Text="{Binding PartInfos.Count, Mode=OneWay}" />
  103. </TextBlock>
  104. </StatusBarItem>
  105. <StatusBarItem HorizontalAlignment="Right">
  106. <TextBlock Text="{Binding StatusMessage}" />
  107. </StatusBarItem>
  108. </StatusBar>
  109. </Grid>
  110. </UserControl>