Использование UWP TextBox.TextChanging для игнорирования неверных данных
Я создаю приложение UWP, которое имеет различные текстовые поля для ввода чисел. Чтобы убедиться, что можно вводить только цифры, я использую событие TextChanging. К сожалению, я не могу найти никакой документации о том, как использовать TextChanging в деталях, чтобы игнорировать неправильные входные данные.
Рабочее решение для одного TextBox следующее:
string oldText;
private void tbInput_TextChanging(TextBox sender, TextBoxTextChangingEventArgs args)
{
double temp;
if (double.TryParse(sender.Text, out temp) || sender.Text == "")
oldText = sender.Text;
else
{
int pos = sender.SelectionStart - 1;
sender.Text = oldText;
sender.SelectionStart = pos;
}
}
Используя это решение, мне понадобитсяstring oldText
для каждого TextBox, а также либо функции TextChanging для каждого из них, либо намного больше кода внутри функции.
Есть ли простой способ игнорировать «неправильные» входы в событии TextBox.TextChanging?