我创建了DataGrid并将背景设置为bi透明。现在我想将前景设置为蓝色,但它不想更改,始终为黑色。我尝试将Foreground =“Blue”放在所有这些位置,但从未成功。
<DataGrid Background="Transparent" Foreground="Blue">
<DataGrid.Columns Foreground="Blue">
<DataGridTextColumn Foreground="Blue" Header="AAA"/>
<DataGridTextColumn Foreground="Blue" Header="BBB"/>
<DataGridTextColumn Foreground="Blue" Header="CCC"/>
<DataGridTextColumn Foreground="Blue" Header="DDD"/>
</DataGrid.Columns>
</DataGrid>
我的App.xaml中有这个,所以也许有一些主题会影响它,但是我不知道如何覆盖它。
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Light.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.Blue.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Accent/MaterialDesignColor.Indigo.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
最佳答案
问题在于,每个单元都有一个模板,而wpf并不总是继承到模板生成的ui中。
您可以尝试将其放入数据网格中:
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="TextElement.Foreground" Value="Blue" />
</Style>
</DataGrid.CellStyle>
关于c# - 无法更改DataGrid中的前景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60442822/