2017-01-05 5 views
0

J'ai une maskedtextbox avec le masque suivant: 999999. Je voudrais ajouter quelque chose comme un placeholder en HTML pour aider l'utilisateur final à connaître le masque de ma boîte de texte masquée.VB.NET Placeholder dans MaskedTextBox

Je pense que je peux créer un masque spécifique lorsque le formulaire charge et définir la propriété de texte à "YYYYMM" (l'espace réservé dont j'ai besoin) et lorsque l'utilisateur entrer dans le contrôle, réinitialiser le texte et changer le masque 999999. Cependant, je pense qu'il existe de meilleures solutions.

Je trouve des gens qui parlent de contrôle de filigrane, mais je voudrais trouver quelque chose de plus facile à utiliser.

Toute aide sera appréciée. Merci

+1

Avez-vous pensé à utiliser un contrôle DateTimePicker? Il peut être fait pour ressembler à une zone de texte et prendra des formats personnalisés. – tinstaafl

+0

N'a pas pensé à ce contrôle. Je vais essayer ça. – nbadaud

Répondre

0

Comme suggéré par tinstaafl dans les commentaires, j'ai utilisé un DateTimePicker au lieu d'un MaskedTextBox.

j'ai changé ses propriétés:

CustomFormat = yyyMM 
Format = Custom 
ShowUpDown = True 

De cette façon, j'ai quelque chose de semblable à une zone de texte et je peux sélectionner seulement l'année ou seulement le mois et augmenter avec les boutons haut et bas.

0

Utilisez un DateTimePicker, ce serait le moyen le plus facile, comme suggéré.

Cependant, pour faire comme la question posée ...

Sur , définissez MaskedTextBox1.Text = "YYYYMM"

Ensuite, pour obtenir l'effet de changer le masque à 999999 lorsque la commande est mise au point, utilisez le MaskedTextBox1_GotFocus méthode et utilisation MaskedTextBox1.Text = "999999".

+0

Je l'ai déjà fait tout seul. Cependant, je peux choisir des jours, mais je voudrais montrer seulement des mois et tourner à droite ou à gauche pour changer l'année. – nbadaud

+0

Pouvez-vous poster une photo dans la question de votre 'MaskedTextBox'? – David

+0

Je vais essayer de n'utiliser que le contrôle DateTimePicker maintenant. Actuellement, j'ai ce code: DateTimePicker1.Format = DateTimePickerFormat.Custom et DateTimePicker1.CustomFormat = "yyyyMM" – nbadaud