Delen via


Walkthrough: Werken met de MaskedTextBox-instructie

Taken die in deze walkthrough worden geïllustreerd, omvatten:

  • Het besturingselement MaskedTextBox initialiseren

  • De MaskInputRejected gebeurtenishandler gebruiken om de gebruiker te waarschuwen wanneer een teken niet overeenkomt met het masker

  • Een type toewijzen aan de eigenschap ValidatingType en de TypeValidationCompleted gebeurtenis-handler gebruiken om de gebruiker te waarschuwen wanneer de waarde die hij probeert door te voeren, niet geldig is voor het type

Het project maken en een controle toevoegen

Een MaskedTextBox-besturingselement toevoegen aan uw formulier

  1. Open het formulier waarop u de MaskedTextBox-controle wilt plaatsen.

  2. Sleep een MaskedTextBox-besturingselement van de Werkset naar je formulier.

  3. Klik met de rechtermuisknop op het besturingselement en kies Eigenschappen. Selecteer in het venster Eigenschappen de eigenschap Masker en klik op de knop ... (beletselteken) naast de naam van de eigenschap.

  4. Selecteer in het dialoogvenster Invoermasker het masker korte datum en klik op OK.

  5. Stel in het venster Eigenschappen de eigenschap BeepOnError in op true. Deze eigenschap zorgt ervoor dat telkens wanneer de gebruiker probeert een teken in te voeren dat de maskerdefinitie schendt, een korte pieptoon klinkt.

Zie de sectie Opmerkingen van de eigenschap Mask voor een samenvatting van de tekens die door de eigenschap Mask worden ondersteund.

De gebruiker waarschuwen voor invoerfouten

Een ballontip toevoegen voor geweigerde maskerinvoer

  1. Ga terug naar de Gereedschapskist en voeg een ToolTip toe aan uw formulier.

  2. Maak een gebeurtenis-handler voor de MaskInputRejected gebeurtenis die de ToolTip genereert wanneer er een invoerfout optreedt. De ballontip blijft vijf seconden zichtbaar of totdat de gebruiker erop klikt.

    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  
    

De gebruiker waarschuwen voor een type dat ongeldig is

Voeg een ballontip toe voor ongeldige gegevenstypen

  1. Wijs in de Load-gebeurtenishandler van je formulier een Type-object toe dat het DateTime-type vertegenwoordigt aan de ValidatingType-eigenschap van het MaskedTextBox-besturingselement:

    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  
    
  2. Voeg een gebeurtenis-handler toe voor de TypeValidationCompleted gebeurtenis:

    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  
    

Zie ook