Exemplarische Vorgehensweise: Arbeiten mit dem MaskedTextBox-Steuerelement
In dieser exemplarischen Vorgehensweise werden u. a. folgende Aufgaben veranschaulicht:
Initialisieren des MaskedTextBox-Steuerelements
Verwenden des MaskInputRejected-Ereignishandlers zum Warnen des Benutzers, wenn ein Zeichen nicht der Maske entspricht
Zuweisen eines Typs an die ValidatingType-Eigenschaft und Verwenden des TypeValidationCompleted-Ereignishandlers zum Warnen des Benutzers, wenn der Wert, den er zu übertragen versucht, nicht für den Typ gültig ist
Erstellen des Projekts und Hinzufügen eines Steuerelements
So fügen Sie ein MaskedTextBox-Steuerelement zu Ihrem Formular hinzu
Öffnen Sie das Formular, in dem Sie das MaskedTextBox-Steuerelement platzieren möchten.
Ziehen Sie ein MaskedTextBox-Steuerelement aus der Toolbox auf Ihr Formular.
Klicken Sie mit der rechten Maustaste auf das Steuerelement, und wählen Sie Eigenschaften aus. Wählen Sie im Fenster Eigenschaften die Mask-Eigenschaft aus, und klicken Sie auf die Schaltfläche ... (Auslassungspunkte) neben dem Eigenschaftsnamen.
Wählen Sie im Dialogfeld Eingabemaske die Maske Kurzes Datum aus, und klicken Sie auf OK.
Legen Sie im Fenster Eigenschaften die BeepOnError-Eigenschaft auf
true
fest. Diese Eigenschaft bewirkt, dass jedes Mal ein kurzer Piepton ertönt, wenn der Benutzer versucht, ein Zeichen einzugeben, das gegen die Maskendefinition verstößt.
Eine Zusammenfassung der von der Mask-Eigenschaft unterstützten Zeichen finden Sie im Abschnitt „Hinweise“ der Mask-Eigenschaft.
Benachrichtigen des Benutzers über Eingabefehler
Hinzufügen einer SprechblasenInfo für abgelehnte Maskeneingabe
Kehren Sie zur Toolbox zurück, und fügen Sie ein ToolTip-Steuerelement zu Ihrem Formular hinzu.
Erstellen Sie einen Ereignishandler für das MaskInputRejected-Ereignis, der das ToolTip-Ereignis auslöst, wenn ein Eingabefehler auftritt. Die SprechblasenInfo bleibt fünf Sekunden lang sichtbar, oder bis der Benutzer sie anklickt.
public void Form1_Load(Object sender, EventArgs e) { ... // Other initialization code maskedTextBox1.Mask = "00/00/0000"; maskedTextBox1.MaskInputRejected += new MaskInputRejectedEventHandler(maskedTextBox1_MaskInputRejected) } void maskedTextBox1_MaskInputRejected(object sender, MaskInputRejectedEventArgs e) { toolTip1.ToolTipTitle = "Invalid Input"; toolTip1.Show("We're sorry, but only digits (0-9) are allowed in dates.", maskedTextBox1, maskedTextBox1.Location, 5000); }
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.ToolTip1.IsBalloon = True Me.MaskedTextBox1.Mask = "00/00/0000" End Sub Private Sub MaskedTextBox1_MaskInputRejected(sender as Object, e as MaskInputRejectedEventArgs) Handles MaskedTextBox1.MaskInputRejected ToolTip1.ToolTipTitle = "Invalid Input" ToolTip1.Show("We're sorry, but only digits (0-9) are allowed in dates.", MaskedTextBox1, 5000) End Sub
Benachrichtigen des Benutzers über einen ungültigen Typ
Hinzufügen einer SprechblasenInfo für ungültige Datentypen
Weisen Sie im Load-Ereignishandler Ihres Formulars der ValidatingType-Eigenschaft des MaskedTextBox-Steuerelements ein Type-Objekt zu, das den DateTime-Typ darstellt:
private void Form1_Load(Object sender, EventArgs e) { // Other code maskedTextBox1.ValidatingType = typeof(System.DateTime); maskedTextBox1.TypeValidationCompleted += new TypeValidationEventHandler(maskedTextBox1_TypeValidationCompleted); }
Private Sub Form1_Load(sender as Object, e as EventArgs) // Other code MaskedTextBox1.ValidatingType = GetType(System.DateTime) End Sub
Fügen Sie einen Ereignishandler für das TypeValidationCompleted-Ereignis hinzu:
public void maskedTextBox1_TypeValidationCompleted(object sender, TypeValidationEventArgs e) { if (!e.IsValidInput) { toolTip1.ToolTipTitle = "Invalid Date Value"; toolTip1.Show("We're sorry, but the value you entered is not a valid date. Please change the value.", maskedTextBox1, 5000); e.Cancel = true; } }
Public Sub MaskedTextBox1_TypeValidationCompleted(sender as Object, e as TypeValidationEventArgs) If Not e.IsValidInput Then ToolTip1.ToolTipTitle = "Invalid Date Value" ToolTip1.Show("We're sorry, but the value you entered is not a valid date. Please change the value.", maskedTextBox1, 5000) e.Cancel = True End If End Sub
Weitere Informationen
.NET Desktop feedback
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für