У меня есть простое текстовое поле TextChanged
событие, которое проверяет строку, введенную пользователем в поле.
private void Phone_TextChanged(object sender, TextChangedEventArgs e)
{
string phone = Phone.Text;
if (phone.Length > 2 && phone.Length < 6)
{
string digit = Convert.ToString(phone[phone.Length - 1]);
bool isNumeric = int.TryParse(digit, out int n);
if (!isNumeric)
{
phone = phone.Substring(0, phone.Length - 1);
Phone.Text = phone;
}
}
}
Но когда я пытаюсь его скомпилировать, я получаю System.StackOverflowException
в строке Phone.Text = phone;
. Я попытался изменить Substring()
на Remove()
, но у меня все еще есть эта ошибка. Понятия не имею, в чем проблема.