TOC

This article is currently in the process of being translated into Dutch (~98% done).

Basis controls:

The PasswordBox control

Om gewone tekst te bewerken in WPF, gebruiken we een TextBox. Hoe gaan we om met Wachtwoorden? De functionaliteiten zijn zo goed als dezelfde, maar we willen de karakters die we intikken niet zien, Dit om te voorkomen dat mensen meekijken. Hievoor heeft WPF het PasswordBox besturingselement. Het is even eenvoudig in gebruik als een TextBox. Een voorbeeld:

<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>

In de schermafbeelding, staat exact dezelfde inhoud als in de TextBox, maar in de password versie. De karakters zijn vervangen door bolletjes. Je kan zelf beslissen welk karakter er gebruikt wordt in plaats van het originele karakter, gebruik hiervoor de PasswordChar eigenschap

<PasswordBox PasswordChar="X" />

In dit voorbeeld, zal het karakter X gebruikt worden in plaats van de bolletjes. Wens je de lengte van het wachtwoord in te stellen, gebruik dan de MaxLength eigenschap.

<PasswordBox MaxLength="6" />

In het volgende voorbeeld gebruik ik de 2 eigenschappen

<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>

Merk op dat de karakters nu x'en zijn en dat je niet meer dan 6 karakters kan invoeren

PasswordBox en binding

Wanneer je het wachtwoord uit de PasswordBox nodig hebt, kan je gebruik maken van de Password eigenschap in de Code. Voor veiligheidsredenen is het echter niet mogelijk om te binden

Dit kan misschien belangrijk zijn voor je, zoals eerder gezegd, kan je het wachtwoord nog steeds lezen vanuit de achterliggende code, voor MVVM toepassingen of als je gewoon graag aan data binding doet, bestaat er een alternatieve oplossing. Deze lees je hier: 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!