Readdy Write  
0,00 €
Your View Money
Views: Count
Self 20% 0
Your Content 60% 0

Users by Links 0
u1*(Content+Views) 10% 0
Follow-Follower 0
s2*(Income) 5% 0

Count
Followers 0
Login Register as User

WPF: Selected Row Farbe ändern

22.05.2019 (👁7019)

WPF: Selected Row Farbe ändern

 

Wie kann man die Selected-Zeile eines Datengrid in der Farbe ändern?

Lösung

Hierzu kann man über einen Style die DataGridRow anpassen.

Dann wählt man den Trigger auf IsSelected und kann die Background-Farbe auf die gewählte Farbe wählen

<DataGrid SelectionMode="Single"           

SelectionUnit="FullRow">

            <DataGrid.RowStyle>

                <Style TargetType="DataGridRow">

                    <Style.Triggers>

                        <Trigger Property="IsSelected" Value="True">

                            <Setter Property="Background" Value="Blue"/>

                        </Trigger>

                    </Style.Triggers>

                </Style>

            </DataGrid.RowStyle>

        </DataGrid>

Komplettes WPF XAML Grid

<DataGrid x:Name="ctlDataGrid" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"

          AutoGenerateColumns="False"

          GridLinesVisibility="All"

          Background="#F0f0f0" 

          SelectionMode="Single" 

          IsReadOnly="True" 

          MouseDoubleClick="ctlDataGrid_MouseDoubleClick"

           SelectionChanged="CtlDataGrid_SelectionChanged"

           HeadersVisibility="All"                  

           Grid.Row="1" 

           SelectionUnit="FullRow"                   

          >

            <DataGrid.RowStyle>

                <Style TargetType="DataGridRow">

                    

                    <Style.Triggers>

                        <Trigger Property="IsSelected" Value="True">

                            <Setter Property="Background" Value="Blue"/>

                        </Trigger>

                    </Style.Triggers>

                </Style>

            </DataGrid.RowStyle>

 

            <DataGrid.Columns>

                <DataGridTextColumn Header="ID" Binding="{Binding IDFeiertag}"/>

                <DataGridTextColumn Header="Datum" Binding="{Binding Datum_Feiertag}" Width="90"/>

                <DataGridTextColumn Header="Feiertag" Binding="{Binding Feiertag}" Width="140"/>

                <DataGridTextColumn Header="Kurz" Binding="{Binding Kurz}">

                    <DataGridTextColumn.CellStyle>

                        <Style TargetType="DataGridCell">

                            <Setter Property="Background" Value="{Binding Farbe}" />

                            <Setter Property="Foreground" Value="{Binding Textfarbe}" />

                        </Style>

                    </DataGridTextColumn.CellStyle>

                </DataGridTextColumn>

 

 

            </DataGrid.Columns>

        </DataGrid>