DataGrid ComboBox: keyboard-focused item uses an undefined brush key (MaterialDesign.Brush.TextBox.ComboBoxHover)
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- Moins d'une heure
- Accessibilité débutants
- 88/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- csharp
- Domaine
- desktop-dev
Piste de recherche
Le problème se situe dans src/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.DataGrid.ComboBox.xaml vers la ligne 60, dans le MultiTrigger de focus clavier du modèle de conteneur d'élément. Compare la clé utilisée à cet endroit avec celle du trigger de survol de la souris à la ligne 53, et vérifie qu'elle est définie dans MaterialDesignTheme.Light.xaml et Dark.xaml. C'est terminé lorsque l'élément ayant le focus est mis en surbrillance lors de la navigation avec les touches fléchées, ce que tu peux confirmer en lançant l'exemple DataGrid ComboBox de l'application de démonstration.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Bug explanation
src/MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.DataGrid.ComboBox.xaml, line 60, in the item container template of the DataGrid ComboBox:
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="False" />
<Condition Property="IsKeyboardFocused" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource MaterialDesign.Brush.TextBox.ComboBoxHover}" />
</MultiTrigger>
No resource with the key MaterialDesign.Brush.TextBox.ComboBoxHover is defined anywhere in the repository (GitHub code search finds only this line). The trigger right above it — the mouse-over case, line 53 — uses MaterialDesign.Brush.DataGrid.ComboBoxHover, which is defined in both MaterialDesignTheme.Light.xaml and MaterialDesignTheme.Dark.xaml (line 39), and lines 171 and 297 use the same key. So this looks like the keyboard-focus trigger was meant to use it too.
Since it is a DynamicResource, nothing throws: the background just doesn't change when an item gets keyboard focus, so someone moving through the dropdown with the arrow keys gets no highlight on the focused item. I found this by reading the source and haven't run it, so apologies if I'm missing something.
Suggested change (line 60):
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource MaterialDesign.Brush.DataGrid.ComboBoxHover}" />
The line is the same in 5.4.0 and on master at 0877280.
Found with XamlKeys, a static checker for XAML resource keys I'm working on.
Version
5.4.0
- Langage dominant
- C#
- Étoiles
- 16.3k
- Forks
- 3.5k
- Merge moyen
- 4 h 25 min
- PR mergées (30 j)
- 4
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de MaterialDesignInXAML/MaterialDesignInXamlToolkit
-
MaterialDesignChoiceChipListBoxItem missing 'Path=Name' in GroupName binding causes selection conflict between ListBoxesPeut-être pris @corvinsz l’a pris il y a 12 jours. Ouvertebug evaluation required
Difficulté 1/5 1-3 heures Accessibilité débutants 78/100
MaterialDesignInXAML/MaterialDesignInXamlToolkit#4118 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement up-for-grabs
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
MaterialDesignInXAML/MaterialDesignInXamlToolkit#2485 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement evaluation required
Difficulté 3/5 Une demi-journée Accessibilité débutants 30/100
MaterialDesignInXAML/MaterialDesignInXamlToolkit#4120 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Add Semantic, Theme-Aware ColorsPeut-être pris @corvinsz l’a pris il y a 22 jours. Ouverteenhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
MaterialDesignInXAML/MaterialDesignInXamlToolkit#4114 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
[Feature Request] Proposals for input/display improvements and hexadecimal support in NumericUpDownOuverteenhancement evaluation required
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 15/100
MaterialDesignInXAML/MaterialDesignInXamlToolkit#4108 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de MaterialDesignInXAML/MaterialDesignInXamlToolkit
Issues similaires
-
area / templates
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
bitfoundation/bitplatform#15109 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
aikido critical security
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
dequelabs/axe-core-nuget#305 ·
-
:watch: Not Triaged dotnet-fundamentals/svc install/subsvc
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour