TOC

This article has been localized into Spanish by the community.

Controles básicos:

El control PasswordBox

Para editar texto normal, podemos utilizar un TextBox. Pero, ¿qué hay de la edición de contraseñas? Buscamos la misma funcionalidad básica, aunque para las contraseñas, deseamos esconder los caracteres ingresados para proteger nuestra contraseña de cualquier metiche que nos esté observando sobre el hombro. Para este propósito, WPF nos provee el control de PasswordBox , que resulta tan fácil de usar como un TextBox. Ilustrémoslo con el siguiente ejemplo:

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

En la imagen, hemos introducido el mismo texto en ambas cajas de texto. Sin embargo, en la caja para la contraseña, los caracteres que hemos ingresado han sido reemplazados con puntos. De hecho, podemos controlar que carácter aparecerá en lugar de lo que ingresemos, utilizando la propiedad PasswordChar. Notemos:

<PasswordBox PasswordChar="X" />

En este caso, una “X” aparecerá en lugar de los puntos vistos anteriormente. Además, si deseamos controlar la longitud de la contraseña, podemos utilizar la propiedad de MaxLength, como sigue:

<PasswordBox MaxLength="6" />

En el siguiente ejemplo, hemos utilizado ambas propiedades:

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

Observe cómo los caracteres ahora son reemplazados por 'X' y solo se permite el ingreso de 6 caracteres en la caja de texto.

PasswordBox y enlazamiento

Cuando necesites obtener el password de la PasswordBox, puedes usar la propiedad Password desde el Code-behind. De todas formas, por razones de seguridad, la propiedad Password no está implementada como una propiedad de dependencia, lo que significa que no podrás enlazarla.

Esto puede o no ser importante para ti, como ya se dijo, puedes leer el password del Code-behind, pero para las implementaciones MVVM o si simplemente te encanta enlazar datos, se ha implementado una solución. Puedes leer mucho más sobre esto en : 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!