我正在从数据表中填充一个Datagrid。该数据表是在运行时创建的,并且行和列的数量未知。加载数据表时将创建列标题。如果数据表中有一个空单元格,我希望它突出显示。
我看着答案here。但是它不起作用,它仅突出显示单个列中的单元格,并且它们绑定到列。我做不到。
我的代码:
<DataGrid x:Name="dataGrid" ItemsSource="{Binding DGLines}">
<DataGrid.Columns>
<DataGridTextColumn>
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="Text" Value="">
<Setter Property="Background" Value="LightGreen"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
空白单元格值实际上为空。我不确定这是否是问题。
在任何列中突出显示一个空单元格的正确样式是什么?
答案 0 :(得分:2)
您使用的是UserControl
还是Window
?
如果是Window,则使用此
<Window.Resources>
<Style TargetType="{x:Type DataGridCell}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Content.Text, RelativeSource={RelativeSource Self}}" Value="" >
<Setter Property="Background" Value="LightGreen"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Resources>
否则,如果是UserControl
,只需将Window.Resources
替换为UserControl.Resources
。
我相信已经问过类似的答案,但是我找不到。