Voglio il tasto Esc per chiudere la finestra di WPF. Tuttavia, se c'è un controllo che può consumare quel tasto ESC, non voglio chiudere la finestra. Esistono diverse soluzioni su come chiudere la finestra WPF quando viene premuto il tasto ESC. per esempio. How does the WPF Button.IsCancel property work?Come viene gestita la chiave "Esc" nella finestra WPF?
Tuttavia, questa soluzione chiude la finestra, a prescindere dall'esistenza di un controllo attivo che può utilizzare il tasto ESC.
Ad es. Ho una finestra con un DataGrid. Una delle colonne di dataGrid è una casella combinata. Se sto cambiando il ComboBox e premuto Esc, allora il controllo dovrebbe uscire dalla modifica del comboBox (comportamento normale). E se ora colpisco di nuovo Escape, la finestra dovrebbe chiudersi. Vorrei una soluzione generica, invece di scrivere un sacco di codice personalizzato.
Se è possibile fornire una soluzione in C#, sarebbe fantastico.
Questo funziona per me. Tuttavia non in tutti i casi. In particolare, sto usando il controllo DataGrid di Telerik. Se una cella ha una casella combinata, ed è espansa, quindi premo Escape, la chiave di escape non viene propagata alla finestra. Tuttavia, se il ComboBox non è espanso, ma in modalità di modifica, viene propagata la chiave di escape. Penso che potrebbe essere un bug con il controllo. Il tuo suggerimento funziona. – Markus2k