Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

WPF: Alt-Taste für die Navigation nutzen

Einfacher geht's nicht, wenn man's weiß. Wenn man es nicht weiß, kann man sich fürchterlich verlaufen.
Manchmal tut es fast körperlich weh, wenn man die Lösung für ein lange ungelöstes Problem findet, weil diese trivial ist und man allzu lange und intensiv auf der falschen Fährte gesucht hat. Mir ist das bei einer WPF-Anwendung passiert, bei der die Navigation nicht nur über Buttons, sondern auch über die Tastatur erfolgen sollte. Es ging um das Blättern von Seite zu Seite in einem Karteikasten. Leider ging ich dies zusammen mit dem Behandeln von KeyDown-Events der Textbox mit und ohne gedrückter Strg-Taste an. Das Erkennen der Alt-Taste nebst Plus- beziehungsweise Minus-Taste erwies sich als schwierig und wanderte bald in die YAGNI-Schublade (You Ain't Gonna Need IT). Dumm gelaufen kann man sagen. Denn erstens gehört das Feature nicht in diese Schublade und zweitens hab' ich es auf der falschen Baustelle zu realisieren versucht. Die Lösung ist nämlich trivial und ich selbst kenne sie eigentlich seit Jahrzehnten.Buttons und Menüpunkte unter Windows lassen sich nämlich quasi schon immer per Tastenkombi Alt plus unterstrichener Buchstabe ansteuern. Das klappt auch in der WPF (zumindest in der aktuellen Version, war aber womöglich schon immer so). Welcher Buchstabe unterstrichen wird, steuert man über den Content eines Objekts, indem man vor den Buchstaben, der mit gedrückter Alt-Taste das Objekt ansteuern soll einen Unterstrich setzt. Für einen WPF-Button sieht das beispielsweise so aus:

<Button Name="btZurück" Content="_-" Height="30" 
  FontFamily="JetBrains Mono" FontSize="16" FontWeight="Black" 
  Width="30" Margin="12 0 0 0" />

<Button Name="btVor" Content="_+" Height="30" 
  FontFamily="JetBrains Mono" FontSize="16" FontWeight="Black" 
  Width="30" Margin="2 0 0 0" />
 
Content="_-" und Content="_+" sorgen dafür, dass man die Buttons zum Blättern einfach mit den Tastenkombinationen [Alt] + [-] beziehungsweise [Alt] + [+] ansteuern kann. Mehr ist nicht zu tun. Der unterstrichene Buchstabe erscheint übrigens erst dann, wenn der Anwender die Alt-Taste drückt.
Miscellaneous

Neueste Beiträge

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
Design mit KI - UX goes Dev, Teil 2
Wie die Integration künstlicher Intelligenz in Designwerkzeuge die Art und Weise verändert, in der digitale Benutzeroberflächen entstehen.
6 Minuten
2. Jul 2026
RAG mit SQL Server 2025: KI-Antworten mit Kontext - SQL Server 2025 und Microsoft Azure AI, Teil 1
RAG als Architekturpattern verbindet Sprachmodelle mit der realen Wissensbasis eines Unternehmens. Seine pragmatische Umsetzung im Microsoft-Stack: Azure OpenAI für Sprache, SQL Server 2025 und Azure AI Search für Semantik und .NET 10 für Integration und Orchestrierung.
6 Minuten
29. Jun 2026

Das könnte Dich auch interessieren

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige