Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês
Esta documentação foi arquivada e não está sendo atualizada.

Propriedade MaskedTextBox.ValidatingType

Obtém ou define o tipo de dados usado para verificar a entrada de dados pelo usuário.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (em System.Windows.Forms.dll)

[BrowsableAttribute(false)]
public Type ValidatingType { get; set; }

Valor de propriedade

Tipo: System.Type
A Type representando o tipo de dados usado na validação. O padrão é null.

Máscaras de em si mesmos garante que uma entrada de usuário representarão um valor válido para um determinado tipo.O código de translation from VPE for Csharp a seguir mostra uma máscara:

maskedTextBox1.Mask = "99/99/9999";

A seguir Visual Basic código mostra uma máscara:

MaskedTextBox1.Mask = "99/99/9999"

Essa máscara pode exigir que o usuário insira oito dígitos, mas não pode verificar que o usuário insira valores de ano, mês e data no intervalo correto; "12/20/2003" e "70/90/0000" são igualmente válido que diz respeito à máscara.

Você pode usar ValidatingType Para verificar se os dados inseridos pelo usuário ocorre dentro do intervalo correto — no caso mencionado anteriormente, atribuindo ele uma instância das DateTime Digite. O texto no controle corrente será validado ou quando o usuário deixa o controle.Você pode determinar se os dados falhar na validação, monitorando o TypeValidationCompleted evento. MaskedTextBox só executará a verificação de ValidatingType Se MaskCompleted é true.

Se você quiser usar seus próprios tipos de dados personalizada com ValidatingType, você deve implementar um estático Parse método que usa uma cadeia de caracteres sistema autônomo um parâmetro. Esse método deve ser implementado com uma ou ambas as seguintes assinaturas:

public static Object Parse(string)

public static Object Parse(string, IFormatProvider)

Para obter um exemplo de como implementar a análise em um tipo de dados personalizados, consulte Exemplo de Controlarar MaskedTextBox.

O exemplo de código a seguir tenta analisar a entrada do usuário sistema autônomo um válido DateTime. Se ele falhar, o TypeValidationCompleted evento manipulador exibe uma mensagem de erro para o usuário. Se o valor for um válido DateTime, o código realiza uma verificação adicional para garantir que a data fornecida não seja anterior à data de hoje. Este exemplo de código requer que seu projeto Windows Forms contém um MaskedTextBox controle de chamada MaskedTextBox1 e um ToolTip controle de chamada ToolTip1.

privatevoid Form1_Load(object sender, EventArgs e)
{
    maskedTextBox1.Mask = "00/00/0000";
    maskedTextBox1.ValidatingType = typeof(System.DateTime);
    maskedTextBox1.TypeValidationCompleted += new TypeValidationEventHandler(maskedTextBox1_TypeValidationCompleted);
    maskedTextBox1.KeyDown += new KeyEventHandler(maskedTextBox1_KeyDown);

    toolTip1.IsBalloon = true;
}

void maskedTextBox1_TypeValidationCompleted(object sender, TypeValidationEventArgs e)
{
    if (!e.IsValidInput)
    {
        toolTip1.ToolTipTitle = "Invalid Date";
        toolTip1.Show("The data you supplied must be a valid date in the format mm/dd/yyyy.", maskedTextBox1, 0, -20, 5000);
    }
    else
    {
        //Now that the type has passed basic type validation, enforce more specific type rules.
        DateTime userDate = (DateTime)e.ReturnValue;
        if (userDate < DateTime.Now)
        {
            toolTip1.ToolTipTitle = "Invalid Date";
            toolTip1.Show("The date in this field must be greater than today's date.", maskedTextBox1, 0, -20, 5000);
            e.Cancel = true;
        }
    }
}

// Hide the tooltip if the user starts typing again before the five-second display limit on the tooltip expires.void maskedTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    toolTip1.Hide(maskedTextBox1);
}


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

o.NET Framework e.NET Compact Framework não oferecem suporte a todas as versões de cada plataforma. Para obter uma lista de versões suportadas, consulte Requisitos de sistema do .NET framework.

.NET Framework

Compatível com: 3.5, 3.0, 2.0
Mostrar: