Maison >développement back-end >C++ >Comment restreindre une zone de texte WPF pour accepter uniquement l'entrée numérique?

Comment restreindre une zone de texte WPF pour accepter uniquement l'entrée numérique?

Susan Sarandon
Susan Sarandonoriginal
2025-01-29 14:16:10763parcourir

How to Restrict a WPF TextBox to Accept Only Numeric Input?

uniquement l'entrée numérique

dans la zone de texte WPF Les applications WPF doivent souvent limiter la zone de texte pour recevoir uniquement les entrées numériques.

Utilisez AperçuTextInput et IsTextallowed

Afin d'atteindre cette fonction, vous pouvez utiliser incident:

PreviewTextInput Dans le programme de traitement des événements , vous pouvez utiliser la méthode

pour contrôler si l'utilisateur est autorisé à saisir:
<code class="language-xml"><TextBox PreviewTextInput="PreviewTextInput"></TextBox></code>

PreviewTextInput Cette méthode utilise des expressions régulières pour vérifier l'entrée pour répondre aux besoins de l'application. IsTextAllowed

Empêcher les objets de données de paster
<code class="language-csharp">private static readonly Regex _regex = new Regex("[^0-9.-]+"); //匹配不允许的文本的正则表达式
private static bool IsTextAllowed(string text)
{
    return !_regex.IsMatch(text);
}

private void PreviewTextInput(object sender, TextCompositionEventArgs e)
{
    if (!IsTextAllowed(e.Text))
    {
        e.Handled = true;
    }
}</code>

Afin de limiter davantage l'entrée, vous pouvez utiliser l'événement

:

Cela garantit que les données collées dans la zone de texte remplissent également les conditions d'entrée requises. Notez que est corrigé ici DataObject.Pasting, qui est plus conforme au type de paramètre de l'événement

. Pour l'incident , le code reste inchangé.
<code class="language-xml"><TextBox DataObject.Pasting="TextBoxPasting"></TextBox></code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn