2009-11-02 5 views
17

J'ai une fenêtre XAML avec plusieurs TextBoxes, chacune avec une balise TextBlock correspondante pour un titre. Je voudrais activer Alt-raccourcis clavier pour cette fenêtre (maintenez la touche Alt pour afficher les lettres soulignées dans les titres TextBlock, tapez une de ces lettres et la mise au point devrait être remplacée par la TextBox).Créer des raccourcis Alt-key dans WPF/XAML

J'ai découvert comment faire une chose similaire pour les éléments de menu (placer un trait de soulignement dans le titre du menu), mais comment va-t-on le faire pour d'autres éléments dans une fenêtre dans ce cas?

Répondre

25

Au lieu d'utiliser TextBlock, utilisez the Label control. Il a un support intrinsèque pour associer un mnémonique avec un autre contrôle via Target property. Pour choisir le personnage qui représentera l'alt +, il suffit de le préfixer avec un _ (trait de soulignement) dans the Label's Content.

+0

Merci, c'est exactement ce dont j'avais besoin :-) – DashRantic

+1

Lorsque vous placez une étiquette à l'intérieur d'un bouton et désactivez le bouton, l'étiquette ne devient pas grise. Lorsque vous placez un TextBlock à l'intérieur d'un bouton, il devient gris. J'ai besoin de la fonctionnalité complète d'un bouton - j'ai besoin des raccourcis clavier alt +, et j'en ai besoin pour devenir gris quand il est désactivé. Comment dois-je accomplir cela? – BrainSlugs83

+0

@ BrainSlugs83 n'a pas pu lier la propriété IsEnabled de l'étiquette à la propriété IsEnabled du bouton associé? –