MaskedTextBox.MaskInputRejected MaskedTextBox.MaskInputRejected MaskedTextBox.MaskInputRejected MaskedTextBox.MaskInputRejected Event

定義

ユーザーの入力または割り当てられた文字が、入力マスクの対応する書式要素と一致しない場合に発生します。Occurs when the user's input or assigned character does not match the corresponding format element of the input mask.

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 

このメンバーの使用例を次のコード例に示します。The following code example demonstrates the use of this member. この例では、イベントハンドラーがMaskInputRejectedイベントの発生を報告します。In the example, an event handler reports on the occurrence of the MaskInputRejected event. このレポートは、イベントがいつ発生し、デバッグに役立つかを理解するのに役立ちます。This report helps you to learn when the event occurs and can assist you in debugging. 複数のイベントまたは頻繁に発生するイベントについてレポートMessageBox.ShowするConsole.WriteLineには、メッセージをに置き換えるTextBoxか、または複数行に追加することを検討してください。To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

コード例を実行するには、という名前MaskedTextBox MaskedTextBox1の型のインスタンスを含むプロジェクトに貼り付けます。To run the example code, paste it into a project that contains an instance of type MaskedTextBox named MaskedTextBox1. 次に、イベントハンドラーがMaskInputRejectedイベントに関連付けられていることを確認します。Then ensure that the event handler is associated with the MaskInputRejected event.

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

注釈

MaskInputRejectedは、 MaskedTextBoxクラスの既定のイベントです。MaskInputRejected is the default event for the MaskedTextBox class.

MaskInputRejectedイベントは、入力マスクによって文字が拒否された場合に発生します。The MaskInputRejected event occurs when a character is rejected by the input mask. Maskプロパティによって表される入力マスクは、 MaskedTextProviderプロパティによってコントロールに関連付けられたマスクされたテキストプロバイダーによって解釈されます。The input mask, represented by the Mask property, is interpreted by the masked text provider associated with the control through the MaskedTextProvider property. MaskInputRejectedは、次のような場合に発生します。MaskInputRejected is raised in the following situations:

  • 入力文字が対応する書式要素と一致しません。An input character does not match the corresponding format element. たとえば、数字が必要な場合、ユーザーはアルファベット文字を入力します。For example, the user enters an alphabetic character when a digit is required. このイベントが発生する最も一般的な理由と考えられます。This is probably the most common reason why this event is raised.

  • マスクが既に入力されているか、現在のキャレットの位置が表示されている入力マスク文字列の最後に移動されたため、マスクの末尾を越えて余分な文字を入力しようとしています。The user is trying to input extraneous characters beyond the end of the mask either because the mask has already been filled or the current caret position has been moved to the very end of the displayed input mask string.

  • 貼り付け操作で、関連付けられている書式要素と一致しない文字がIsOverwriteMode挿入さfalseれるか、またはプロパティがの場合は、既存の文字がその書式要素と一致しない新しい位置にシフトされます。A paste operation either inserts a character that does not match its associated format element, or if the IsOverwriteMode property is false, it shifts existing characters into new positions where they do not match their format elements.

  • 切り取り操作では既存の文字が左にシフトされ、1つ以上の文字が新しく関連付けられた書式指定要素と一致しません。A cut operation shifts existing characters to the left, and one or more characters do not match their newly associated format elements.

  • プロパティがText割り当てられましたが、割り当てられた文字列によって1つ以上のマスク違反が発生しました。An assignment was made to the Text property and the assigned string caused one or more mask violations.

が発生するコントロールMaskInputRejectedに文字列が割り当てられている場合は、文字列の一部がにMaskedTextBox表示されません。If a string was assigned to the control that causes MaskInputRejected to occur, no part of the string will appear in MaskedTextBox.

MaskInputRejected既定の処理では、 BeepOnErrorプロパティがにtrue設定されている場合、ビープ音が鳴ります。The default handling for MaskInputRejected will play a beep sound if the BeepOnError property is set to true. このイベントは、多くの場合、カスタムエラー処理を実装するために処理されます。たとえば、マスクがいっぱいの場合に次のユーザー入力コントロールに移動したり、入力文字が無効である場合にカスタムエラーダイアログボックスやツールヒントを表示したりします。This event is often handled to implement custom error handling, for example, to move to the next user input control if the mask is full, or to display a custom error dialog box or ToolTip if the input character is invalid.

適用対象

こちらもご覧ください