Come faccio a cambiare la tastiera su schermo per un PasswordBox
-
26-09-2019 - |
Domanda
Ho una scatola che voglio prendere una password di soli numeri (come un PIN ATM-carta), come è il modo migliore per farlo?
Requisiti:
- password (con i numeri nascosti)
- cifre Digitando come predefinite (solo?) Da tastiera
Quello che ho provato:
Ho pensato che InputScopes sarebbe la strada da percorrere, ma non riesco a impostare l'ambito di ingresso su una scatola di password. Ho anche provato a mettere l'InputScope password su un TextBox normale, ma che non ha mascherare l'aspetto dei caratteri nella casella di testo. Suggerimenti?
Soluzione
Versione corta - non è out-of-the-box per quanto ne so
.Hai assolutamente ragione che PasswordBox non supportano InputScope. Avrei pensato che ha ereditato da TextBox o un antenato comune per l'input testuale per ottenere InputScope, ma eredita direttamente da Control. E poiché si tratta di una classe chiusa, non è possibile ereditare e cambiarlo comportamento sia. Non credo che si può ottenere utilizzando ControlTemplate sia.
Quindi, la cosa migliore sarà probabilmente di creare il proprio controllo imitando il comportamento dei PasswordBox, tra cui il secondo di ritardo molto tempo prima che il carattere mostrato diventa il personaggio nascosto.