TOC

This article has been localized into Italian by the community.

Controlli base:

Il controllo PasswordBox

Per modificare il testo normale in WPF abbiamo il TextBox, ma per quanto riguarda la modifica delle password? La funzionalità è praticamente la stessa, ma vogliamo che WPF mostri qualcosa di diverso dai caratteri reali quando digiti una password, per proteggerlo da persone curiose che guardano alle tue spalle. A tale scopo, WPF ha il controllo PasswordBox, che è facile da usare quanto TextBox. Consentitemi di illustrarlo con un esempio:

<Window x:Class="WpfTutorialSamples.Basic_controls.PasswordBoxSample"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="PasswordBoxSample" Height="160" Width="300">
    <StackPanel Margin="10">
        <Label>Text:</Label>
        <TextBox />
        <Label>Password:</Label>
        <PasswordBox />
    </StackPanel>
</Window>

Nello screenshot, ho inserito esattamente lo stesso testo nelle due caselle, ma nella versione della password, i caratteri sono sostituiti con punti. Puoi effettivamente controllare quale carattere è utilizzato al posto dei caratteri reali, usando la proprietà PasswordChar:

<PasswordBox PasswordChar="X" />

In questo caso, verrà utilizzato il carattere X al posto dei punti. Nel caso in cui sia necessario controllare la lunghezza della password, esiste la proprietà MaxLength:

<PasswordBox MaxLength="6" />

Ho utilizzato entrambe le proprietà in questo esempio aggiornato:

<Window x:Class="WpfTutorialSamples.Basic_controls.PasswordBoxSample"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="PasswordBoxSample" Height="160" Width="300">
    <StackPanel Margin="10">
        <Label>Text:</Label>
        <TextBox />
        <Label>Password:</Label>
        <PasswordBox MaxLength="6" PasswordChar="X" />
    </StackPanel>
</Window>

Notate come i caratteri ora sono X, e che mi è stato permesso di inserire solo 6 caratteri nella casella.

PasswordBox e Binding (associazione)

Quando è necessario ottenere la password da PasswordBox, è possibile utilizzare la proprietà Password da Code-behind. Tuttavia, per motivi di sicurezza, la proprietà Password non viene implementata come proprietà di dipendenza, il che significa che non è possibile associarvisi.

Questo può essere o non essere importante per te - come già affermato, puoi ancora leggere la password da Code-behind, ma per le implementazioni MVVM o se ti piacciono i binding di dati, è stata sviluppata una soluzione alternativa. Puoi leggere molto di più a riguardo qui: http://blog.functionalfun.net /2008/06/wpf-passwordbox-and-data-binding.html


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!