Bruce
Bruce

Reputation: 577

Change background color datagrid to mahapp wpf

I try to change background color for datagrid with mahapp color but I don't know why it's not changed

<StackPanel>
    <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="White" Margin="20" FontSize="16" Text="Databse"/>

    <DataGrid  AutoGenerateColumns="False" 
               ScrollViewer.CanContentScroll="True"
               MaxHeight ="500" 
               HeadersVisibility="None"
               ScrollViewer.VerticalScrollBarVisibility="Auto"
               ScrollViewer.HorizontalScrollBarVisibility="Auto" 
               Margin="20 0 20 20"
               BorderThickness="0"
               ItemsSource="{Binding Lecturers}">

        <DataGrid.Resources>
            <SolidColorBrush x:Key="MahApps.Brushes.ThemeBackground" Color="#38364E" />
            <SolidColorBrush x:Key="MahApps.Brushes.Text" Color="White"/>
        </DataGrid.Resources>

        <DataGrid.Columns >
            <DataGridTextColumn  Header="Project Name" Binding="{Binding Name}">

            </DataGridTextColumn>
        </DataGrid.Columns>


    </DataGrid>
</StackPanel>

The result's always

ta

Upvotes: 0

Views: 588

Answers (1)

mm8
mm8

Reputation: 169240

Define a RowStyle:

<DataGrid  AutoGenerateColumns="False" 
               ScrollViewer.CanContentScroll="True"
               MaxHeight ="500" 
               HeadersVisibility="None"
               ScrollViewer.VerticalScrollBarVisibility="Auto"
               ScrollViewer.HorizontalScrollBarVisibility="Auto" 
               Margin="20 0 20 20"
               BorderThickness="0"
               ItemsSource="{Binding Lecturers}">

    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow" BasedOn="{StaticResource MahApps.Styles.DataGridRow}">
            <Setter Property="Background" Value="Red" />
            <Setter Property="Foreground" Value="Yellow" />
        </Style>
    </DataGrid.RowStyle>

    <DataGrid.Resources>
        <SolidColorBrush x:Key="MahApps.Brushes.DataGrid.Selection.Background.MouseOver" Color="Blue" />
    </DataGrid.Resources>

    <DataGrid.Columns >
        <DataGridTextColumn  Header="Project Name" Binding="{Binding Name}" />
    </DataGrid.Columns>

</DataGrid>

Upvotes: 3

Related Questions