MaskedTextBox.MaskInputRejected Zdarzenie

Definicja

Występuje, gdy znak wejściowy lub przypisany przez użytkownika nie jest zgodny z odpowiednim elementem formatu maski wprowadzania.

public:
 event System::Windows::Forms::MaskInputRejectedEventHandler ^ MaskInputRejected;
public event System.Windows.Forms.MaskInputRejectedEventHandler MaskInputRejected;
public event System.Windows.Forms.MaskInputRejectedEventHandler? MaskInputRejected;
member this.MaskInputRejected : System.Windows.Forms.MaskInputRejectedEventHandler 
Public Custom Event MaskInputRejected As MaskInputRejectedEventHandler 

Typ zdarzenia

Przykłady

W poniższym przykładzie kodu pokazano użycie tego elementu członkowskiego. W tym przykładzie program obsługi zdarzeń zgłasza wystąpienie MaskInputRejected zdarzenia. Ten raport pomaga dowiedzieć się, kiedy wystąpi zdarzenie, i może pomóc w debugowaniu. Aby zgłosić wiele zdarzeń lub często występujących zdarzeń, rozważ zastąpienie MessageBox.Show komunikatu ciągiem Console.WriteLine lub dołączenie go do wielowierszowego TextBoxelementu .

Aby uruchomić przykładowy kod, wklej go w projekcie zawierającym wystąpienie typu MaskedTextBox o nazwie MaskedTextBox1. Następnie upewnij się, że program obsługi zdarzeń jest skojarzony ze zdarzeniem MaskInputRejected .

private void MaskedTextBox1_MaskInputRejected(Object sender, MaskInputRejectedEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Position", e.Position );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "RejectionHint", e.RejectionHint );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "MaskInputRejected Event" );
}
Private Sub MaskedTextBox1_MaskInputRejected(sender as Object, e as MaskInputRejectedEventArgs) _ 
     Handles MaskedTextBox1.MaskInputRejected

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "Position", e.Position)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "RejectionHint", e.RejectionHint)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"MaskInputRejected Event")

End Sub

Uwagi

MaskInputRejected jest domyślnym zdarzeniem MaskedTextBox dla klasy.

Zdarzenie MaskInputRejected występuje, gdy znak zostanie odrzucony przez maskę wprowadzania. Maska wprowadzania reprezentowana przez Mask właściwość jest interpretowana przez dostawcę zamaskowanego tekstu skojarzonego z kontrolką MaskedTextProvider za pośrednictwem właściwości . MaskInputRejected program jest zgłaszany w następujących sytuacjach:

  • Znak wejściowy nie jest zgodny z odpowiednim elementem formatu. Na przykład użytkownik wprowadza znak alfabetyczny, gdy wymagana jest cyfra. Jest to prawdopodobnie najczęstsza przyczyna zgłoszenia tego zdarzenia.

  • Użytkownik próbuje wprowadzić dodatkowe znaki poza końcem maski, ponieważ maska została już wypełniona lub bieżąca pozycja karetki została przeniesiona na sam koniec wyświetlanego ciągu maski wejściowej.

  • Operacja wklejania wstawia znak, który nie pasuje do skojarzonego elementu formatu, lub jeśli IsOverwriteMode właściwość ma falsewartość , przenosi istniejące znaki do nowych pozycji, w których nie są zgodne z elementami formatu.

  • Operacja wycinania przenosi istniejące znaki w lewo, a co najmniej jeden znak nie jest zgodny z nowo skojarzonymi elementami formatu.

  • Przypisanie zostało wykonane do Text właściwości, a przypisany ciąg spowodował co najmniej jedno naruszenie maski.

Jeśli ciąg został przypisany do kontrolki, która powoduje MaskInputRejected wystąpienie, żadna część ciągu nie będzie wyświetlana w pliku MaskedTextBox.

Domyślna obsługa parametru MaskInputRejected spowoduje odtwarzanie dźwięku sygnału dźwiękowego, jeśli właściwość jest ustawiona BeepOnError na true. To zdarzenie jest często obsługiwane w celu zaimplementowania niestandardowej obsługi błędów, na przykład w celu przejścia do następnej kontrolki wprowadzania danych przez użytkownika, jeśli maska jest pełna, lub wyświetlenia niestandardowego okna dialogowego błędu lub etykietki narzędzia, jeśli znak wejściowy jest nieprawidłowy.

Dotyczy

Zobacz też