The <PasswordBox> element of XAML represents a password box in WPF.
The following code snippet creates a
PasswordBox and sets a few of its properties such as
Height,
Width,
Foreground and
Background.
- <PasswordBox Height="42" Width="200" Margin="22,28,28,0"
- Name="passwordBox1" VerticalAlignment="Top"
- Background="LightBlue" Foreground="DarkBlue"
- />
The default PasswordBox looks as in
Figure 1.
Figure 1The
MaxLength property gets and sets the maximum number of characters you can enter in a
PasswordBox.
The
Password property is used to get and set the current password in a
PasswordBox.
The
PasswordBox is not a
PasswordBox without its masking feature. The
PasswordChar property is used to get and set the masking character for the
PasswordBox. The default masking character is a dot.
The following code snippets sets the
MaxLength,
PasswordChar and
Password properties of a
PasswordBox control.
- <PasswordBox Height="42" Width="200" Margin="22,28,28,0"
- Name="passwordBox1" VerticalAlignment="Top"
- Background="LightBlue" Foreground="DarkBlue"
- MaxLength="25" PasswordChar="*"
- Password="mahesh"
- />
The output looks as in
Figure 2. The editing will stop as soon as you type 25 characters into the
PasswordBox.
Figure 2The
SecurePassword property gets the password currently held by the
PasswordBox as a
SecureString. The
SecureString represents text that should be kept confidential. The text is encrypted for privacy when being used and is deleted from computer memory when no longer needed.
EventsBesides the preceding discussed properties, the
PasswordBox has a very important event called
PasswordChanged. This even occurs when the value of the Password property is changed.
The following code snippet sets this property and shows a property event handler.
- <PasswordBox Height="42" Width="200" Margin="22,28,28,0"
- Name="passwordBox1" VerticalAlignment="Top"
- Background="LightBlue" Foreground="DarkBlue"
- MaxLength="25" PasswordChar="*"
- Password="mahesh" PasswordChanged="passwordBox1_PasswordChanged"
- />
Here is the
PasswordChanged event handler. You may want to use this property when you need to execute some code when a password is changed.
- private void passwordBox1_PasswordChanged(object sender, RoutedEventArgs e)
- {
- MessageBox.Show("Password changed");
- }