我正在尝试使用XAML样式WPF数据表格,使其看起来像this image。这可能吗?
我尝试了很多方法,但仍然存在以下问题:
编辑: 这是生成数据表格的代码,如您所见,我尝试了在datagrid.cellstyle中使用背景和边距值,但结果出现了上述问题:
- 单元格边框属性仅影响选定的单元格。否则,我只有可以通过VerticalGridLinesBrush着色的1px细线
- 如果在datagrid.cell级别上指定背景颜色,则会覆盖选择
- 我不知道单元格级别(也适用于选择)是否可能具有圆角边缘
编辑: 这是生成数据表格的代码,如您所见,我尝试了在datagrid.cellstyle中使用背景和边距值,但结果出现了上述问题:
<DataGrid x:Name="Grid" Height="305" VerticalAlignment="Top" Width="505" BorderThickness="1"
AutoGenerateColumns="False" SelectionUnit="Cell" HeadersVisibility="None" ItemsSource="{Binding}"
CanUserSortColumns="False" CanUserResizeColumns="False" CanUserReorderColumns="False" CanUserResizeRows="False"
IsReadOnly="True" HorizontalAlignment="Left" BorderBrush="White" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Disabled"
ScrollViewer.CanContentScroll="False" MouseLeftButtonUp="ScreenGrid_MouseLeftButtonUp" Margin="10,10,0,0" Background="#FF000000"
VerticalGridLinesBrush="White" HorizontalGridLinesBrush="White" SelectedCellsChanged="ScreenGrid_SelectedCellsChanged" >
<DataGrid.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Blue"></SolidColorBrush>
<Style x:Key="DataGridRowStyleColoured" TargetType="{x:Type DataGridRow}">
<Setter Property="Background" Value="#FF000000" />
</Style>
</DataGrid.Resources>
<DataGrid.RowStyle>
<StaticResource ResourceKey="DataGridRowStyleColoured"/>
</DataGrid.RowStyle>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="BorderThickness" Value="0"/>
<!--<Setter Property="Margin" Value="5,5,5,5"/> -->
<!-- <Setter Property="Background" Value="White"/> -->
</Style>
</DataGrid.CellStyle>
</DataGrid>