Bonjour,
Je viens vous solliciter pour m'aider sur la personnalisation d'une datagrid !
Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <DataGrid x:Name="NamesListDataGrid" SelectionChanged="NamesList_OnSelectionChanged" MouseDown="NamesListDataGrid_OnMouseDown" IsReadOnly="True" RowHeaderWidth="0" AutoGenerateColumns="False" CanUserResizeRows="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <DataGrid.ColumnHeaderStyle> <Style TargetType="{x:Type DataGridColumnHeader}"> <Setter Property="FontWeight" Value="SemiBold" /> </Style> </DataGrid.ColumnHeaderStyle> <DataGrid.Columns> <DataGridTextColumn Header="Names" Width="*" Binding="{Binding}" /> </DataGrid.Columns> </DataGrid>
Je veux que lorsque je clique sur une row de ma datagrid, sa couleur d'arrière plan change (en noir par exemple), mais j'aimerai que celle ci ne change pas si je clique sur une autre row.
En gros, je veux appliquer le même style sur toutes les row sur lesquelles je clique, et si je clique sur une qui a déjà été cliquée, elle reprend son style d'origine (blanc par exemple)
Je veux aussi que je puisse sélectionner plusieurs row à la fois (en passant la souris et en maintenant le bouton gauche appuyé)
J'ai essayé plusieurs choses, mais je n'y arrive pas.
Voici un style que j'avais mis au départ, mais celui ci s'applique sur une seule row sélectionnée :
Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <Style TargetType="{x:Type DataGridRow}"> <Style.Resources> <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Black" /> <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="White" /> </Style.Resources> </Style>
merci pour votre aide !
Partager