【发布时间】:2019-10-09 17:02:43
【问题描述】:
我对 C# 或 XAML 不太熟悉,但我有一个 DataGrid,它将水平网格线设置为透明。但是,我需要将 DataGrid 的最后一行的底部网格线设为实线而不是透明的。
DataGrid 位于网格内,我尝试将边框粗细值设置为“0,0,0,1”,以防它可能会起作用,但没有。 试图添加一些条件语句来检查DataGrid的最后一行,但是代码的构建方式并没有特别的方法来确定它是否是最后一行。
DataGrid 的当前样式
<Style x:Key="OrderViewDataGridStyle" TargetType="DataGrid">
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="SelectionUnit" Value="FullRow" />
<Setter Property="CanUserSortColumns" Value="True"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
<Setter Property="AlternationCount" Value="2"/>
<Setter Property="IsReadOnly" Value="True"/>
<Setter Property="HorizontalGridLinesBrush" Value="Transparent"/>
<Setter Property="VerticalGridLinesBrush" Value="#CDCDCD"/>
<Setter Property="ColumnHeaderStyle" Value="{StaticResource DatagridColumnHeaderStyle}"/>
<Setter Property="ItemContainerStyle" Value="{StaticResource OrderViewDatagridRowStyle}"/>
<Setter Property="CanUserReorderColumns" Value="False"/>
<Setter Property="CanUserResizeColumns" Value="True"/>
<Setter Property="Background" Value="#F6F6F6"/>
<Setter Property="BorderBrush" Value="#CDCDCD"/>
<Setter Property="AutoGenerateColumns" Value="False"/>
<Setter Property="RowHeaderWidth" Value="0" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="VirtualizingStackPanel.VirtualizationMode" Value="Recycling" />
<Setter Property="VirtualizingStackPanel.IsVirtualizing" Value="True" />
<Setter Property="EnableRowVirtualization" Value="True"/>
<Setter Property="EnableColumnVirtualization" Value="False"/>
</Style>
数据网格
<Grid>
<Grid>
<Border>
...
<Border/>
<DataGrid>
<DataGrid.Columns>
...
<DataGrid.Columns/>
<DataGrid/>
<DataGrid>
<DataGrid.Columns>
...
<DataGrid.Columns/>
<DataGrid/>
<DataGrid>
<DataGrid.Columns>
...
<DataGrid.Columns/>
<DataGrid/>
<Grid/>
<Grid/>
我正在尝试看看是否有更好的方法可以在没有条件 xaml 语句的情况下实现最后一行底部的一行。
【问题讨论】:
-
你说的是显示的最后一行,还是数据中的最后一行?
-
显示的最后一行。所有行都显示得很好。这是我遇到问题的水平网格线。目前它设置为透明,但我需要它是透明的,除了最后一行。我正在尝试显示最后一行的底部网格线。