Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Thomas Lebrun

Tout sur WPF, LINQ, C# et .NET en général !

Actualités

[Silverlight 2] Une PasswordBox en Silverlight à utiliser dans vos projets

La contrôle PasswordBox est sans doute l'un des plus importants disponible avec le Framework .NET.

Non présent dans Silverlight 2, je m'en suis créé un pour les besoins d'un projet. Pour le faire, j'ai simplement hériter de la classe TextBox: on voit donc que le modèle de développement est le même qu'en WPF (Windows Presentation Foundation) Smile

Bien sur, ce contrôle n'est pas parfait, en grande partie à cause du fait que le contrôle TextBox ne donne aucune information sur la position du curseur (Caret): sans doute pour la version finale ? Wink

Quoiqu'il en soit, ce contrôle fonctionne et vous donne une idée de comment tout cela fonctionne.

/// <summary>

/// A control that represent a Password TextBox. As there is no information about the position of the caret,

/// the control is not perfect but all the logic is here.

/// </summary>

public class PasswordBox : TextBox

{

    public StringBuilder SecureText { get; private set; }

 

    public PasswordBox()

        : base()

    {

        this.SecureText = new StringBuilder();

        this.KeyDown += new KeyEventHandler(PasswordBox_KeyDown);

    }

 

    void PasswordBox_KeyDown(object sender, KeyEventArgs e)

    {

        if (e.Key != Key.Back)

        {

            this.SecureText.Append(e.Key.ToString().ToLower());

 

            this.Text = string.Empty;

 

            for (int i = 0; i <= this.SecureText.Length - 1; i++)

            {

                this.Text += "*";

            }

        }

        else

        {

            this.SecureText.Remove(this.SecureText.Length - 1, 1);

 

            this.Text.Remove(this.Text.Length - 1, 1);

        }

 

        e.Handled = true;

    }

}

 

A+

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: jeudi 20 mars 2008 11:45 par Thomas LEBRUN
Classé sous : ,

Commentaires

Thomas LEBRUN a dit :

Suite à une remarque de la part d'Adrien (Galo) sur MSN, il est possible de récupérer la position du curseur avec la propriété SelectionStart: l'Intellisense de VS n'est pas très efficace sur ce coup là....

# mars 20, 2008 14:42

sebmafate a dit :

accessoirement... via les apis, il est possible de créer une passwordbox en 2 lignes en partant de la textbox standard...

# mars 20, 2008 15:53

Thomas LEBRUN a dit :

@sebmafate: je ne sais pas si tu as vu mais ici, on parle de Silverlight.

Dans le cas d'une application Windows/WPF, c'est bcp plus simple (voir déjà implémenté) mais avec Silverlight, ca se complique :)

# mars 20, 2008 17:19
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [Silverlight] En attendant Silverlight 2 RTW par Blog Technique d'Audrey PETIT le il y a 10 heures et 35 minutes

- Le nouveau Gojira, c’est pour lundi… par CoqBlog le 10-11-2008, 01:18

- SharePoint : nouvel article sur la mise en place des Scopes dans MOSS Searchs par Blog Technique de Romelard Fabrice le 10-10-2008, 17:52

- Hello CS par Le Blog de julz le 10-10-2008, 12:26

- MSDN/TechNet/Microsoft Days Tour 2008 à Lille les 13 et 14 Octobre ! par RedoBlog - The .NET Gentleman !!! le 10-10-2008, 09:35

- MVC Pratique #07 - Un projet concret et le transfert des objets avec les ModelBinders par #Rui le 10-09-2008, 23:39

- SQL Server 2008 : Certifié - TS Admin (70-432) par SQL Server vu par Christian Robert le 10-09-2008, 10:58

- [WPF] Comment changer la couleur utilisée pour sélectionner les éléments d’un ItemsControl ? par Thomas Lebrun le 10-09-2008, 10:49

- Hello World! par Hamid's Place le 10-08-2008, 23:38

- SQL Profiler - Configuration pour un développeur - tracer les requêtes SQL de votre application par Atteint de JavaScriptite Aiguë [Cyril Durand] le 10-08-2008, 15:52