in WPF Textbox WPF -Anwendungen müssen häufig die Textbox einschränken, um nur digitale Eingaben zu erhalten.
Verwenden Sie PreviewTextInput und iSTextal
Um diese Funktion zu erreichen, können Sie Vorfall verwenden:
PreviewTextInput
Im Programm für die Ereignisverarbeitung können Sie die
<code class="language-xml"><TextBox PreviewTextInput="PreviewTextInput"></TextBox></code>
PreviewTextInput
Diese Methode verwendet regelmäßige Ausdrücke, um die Eingabe so zu überprüfen, um die Anforderungen der Anwendung zu erfüllen. IsTextAllowed
<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>
pastetieren
Um die Eingabe weiter zu begrenzen, können Sie das Ereignisverwenden:
Dies stellt sicher, dass die Daten, die an das Textfeld eingefügt wurden, auch die erforderlichen Eingabebedingungen erfüllen. Beachten Sie, dass hier DataObject.Pasting
korrigiert wird, was eher mit dem Parametertyp des
<code class="language-xml"><TextBox DataObject.Pasting="TextBoxPasting"></TextBox></code>
Das obige ist der detaillierte Inhalt vonWie kann man ein WPF -Textfeld einschränken, um nur numerische Eingaben zu akzeptieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!