OriginalGriff
Проблема в том, что это правильно: все, что вы наберете для startwith, не будет действительным электронным письмом.
Подумайте об этом: ваша электронная почта "abc@def.ghi"
Когда вы набираете "а", это недопустимо.
Когда вы добавляете "b", он все еще не действителен.
If становится действительным только тогда, когда после 'было введено по крайней мере два символа.!
"abc@def.gh" технически это действительное электронное письмо, хотя оно, вероятно, не пойдет никуда полезным.
Вы не можете проверить наличие действительного электронного письма до тех пор, пока пользователь не закончит его вводить: так что либо сделайте свою проверку и покажите окно сообщения, когда он покинет текстовое поле (вот что такое События validating[^] есть для), Или используйте метку рядом с текстовым полем, чтобы показать вместо этого "недопустимый адрес электронной почты".
Но имейте в виду, что адреса электронной почты могут быть более сложными, чем вы думаете: это пройдет вашу проверку, но не будет действительным: "a.com@" пока эти не будут: "abc@talktalk.net", "abc.def.co.uk", "abc@usa.gov".
Попробуйте использовать регулярное выражение: регулярное выражение для действительной электронной почты - поиск Google[^] - это, вероятно, самый простой способ сделать базовую проверку "Окнесс", хотя единственный способ убедиться, что это "реальный адрес", - это отправить электронное письмо, которое требует перехода по ссылке.