我正在像这样绑定数据网格单元格背景色,并且绑定正在起作用。
<DataGridTextColumn MinWidth="50" Header="Count" Binding="{Binding ItemCount}" IsReadOnly="True" CanUserSort="False">
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="Background" Value="{Binding Color}"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
但是当我这样绑定它时,它会更改文本块的背景颜色,而不是整个单元格。假设我的商品计数超过100,就没有问题。文本块覆盖整个单元格。但是,如果小于100,则可以看到单元格的背景,因为文本块不能覆盖整个单元格。
我该如何解决这个问题?
答案 0 :(得分:1)
您应该使用CellStyle
设置单元格的背景:
<DataGridTextColumn MinWidth="50" Header="Count" Binding="{Binding ItemCount}" IsReadOnly="True" CanUserSort="False">
<DataGridTextColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="Background" Value="{Binding Color}"/>
</Style>
</DataGridTextColumn.CellStyle>
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>