重构路径列表视图,使用DataGrid替代ListView,优化列绑定和操作按钮

This commit is contained in:
tian 2026-01-27 21:39:49 +08:00
parent eef2d6b01c
commit 1e277a4bc3
2 changed files with 30 additions and 25 deletions

View File

@ -111,18 +111,19 @@ NavisworksTransport 批处理队列管理页签视图 - 采用与其他页签一
<Label Content="队列列表" Style="{StaticResource SectionHeaderStyle}"/>
<!-- 队列列表表格 -->
<DataGrid ItemsSource="{Binding QueueItems}"
<DataGrid ItemsSource="{Binding QueueItems}"
SelectedItem="{Binding SelectedItem}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
IsReadOnly="True"
SelectionMode="Single"
HeadersVisibility="Column"
GridLinesVisibility="Horizontal"
Margin="0,10,0,0"
Height="300">
<DataGrid.Columns>
<DataGridTextColumn Header="路径名称" Binding="{Binding PathRouteName}" Width="*"/>
<DataGridTextColumn Header="路径名称" Binding="{Binding PathRouteName}" Width="*" MinWidth="80"/>
<DataGridTextColumn Header="物流对象" Binding="{Binding VehicleObjectName, Converter={StaticResource NullToDashConverter}}" Width="120"/>
<DataGridTextColumn Header="调整角度" Binding="{Binding ObjectRotationCorrection, StringFormat={}{0:F1}°}" Width="80"/>
<DataGridTextColumn Header="手工指定" Binding="{Binding DetectAllObjects, Converter={StaticResource BooleanToYesNoConverter}}" Width="80"/>

View File

@ -223,34 +223,38 @@ NavisworksTransport 路径编辑页签视图 - 采用与动画控制和分层管
</Grid>
<!-- 路径列表 -->
<ListView ItemsSource="{Binding PathRoutes}"
<DataGrid ItemsSource="{Binding PathRoutes}"
SelectedItem="{Binding SelectedPathRoute}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
SelectionMode="Single"
HeadersVisibility="Column"
GridLinesVisibility="Horizontal"
Height="120"
BorderBrush="#FFCCCCCC"
BorderThickness="1"
Margin="0,5,0,0">
<ListView.View>
<GridView>
<GridViewColumn Header="路径名称" DisplayMemberBinding="{Binding Name}" Width="120"/>
<GridViewColumn Header="类型" DisplayMemberBinding="{Binding PathType, Converter={StaticResource PathTypeConverter}}" Width="50"/>
<GridViewColumn Header="点数" DisplayMemberBinding="{Binding PointCount}" Width="50"/>
<GridViewColumn Header="状态" DisplayMemberBinding="{Binding StatusString}" Width="60"/>
<GridViewColumn Header="创建时间" DisplayMemberBinding="{Binding CreatedTime, StringFormat='MM-dd HH:mm:ss'}" Width="100"/>
<GridViewColumn Header="操作" Width="60">
<GridViewColumn.CellTemplate>
<DataTemplate>
<Button Content="时标" ToolTip="时间标签..."
Padding="2" FontSize="10"
Width="44" Height="20"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Click="OnTimeTagButtonClick"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
<DataGrid.Columns>
<DataGridTextColumn Header="路径名称" Binding="{Binding Name, UpdateSourceTrigger=PropertyChanged}" Width="120" IsReadOnly="False"/>
<DataGridTextColumn Header="类型" Binding="{Binding PathType, Converter={StaticResource PathTypeConverter}}" Width="50" IsReadOnly="True"/>
<DataGridTextColumn Header="点数" Binding="{Binding PointCount}" Width="50" IsReadOnly="True"/>
<DataGridTextColumn Header="状态" Binding="{Binding StatusString}" Width="60" IsReadOnly="True"/>
<DataGridTextColumn Header="创建时间" Binding="{Binding CreatedTime, StringFormat='MM-dd HH:mm:ss'}" Width="100" IsReadOnly="True"/>
<DataGridTemplateColumn Header="操作" Width="60" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="时标" ToolTip="时间标签..."
Padding="2" FontSize="10"
Width="44" Height="20"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Click="OnTimeTagButtonClick"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
<!-- 当前路径信息 -->
<TextBlock Text="{Binding SelectedPathRoute.Name, StringFormat='当前选择: {0}', TargetNullValue='当前选择: 无'}"