come catturare il carattere “#” su diverse tastiere locali in WPF / C #?

La mia applicazione WPF gestisce le tastiere e in particolare il carattere # e * in quanto è un telefono VoIP.

Ho un problema con le tastiere internazionali e in particolare con la tastiera inglese britannica. Normalmente ascolto il tasto 3 e se il modificatore del tasto Maiusc non funziona, spariamo a un evento per fare qualcosa. Tuttavia sulla tastiera inglese questo è il carattere ‘£’. Ho scoperto che la tastiera inglese del Regno Unito ha una chiave dedicata per “#”. Ovviamente potremmo semplicemente ascoltare quella particolare chiave, ma questo non risolve il caso dell’inglese americano, che è shift-3 e tutte le innumerevoli altre tastiere che lo mettono altrove.

Per farla breve, come faccio ad ascoltare un determinato personaggio da una pressione di un tasto, sia che si tratti di una chiave combinata o di una singola chiave e di reactjs ad essa?