سلام . هنگامی که توی تکس باکس عددی رو وارد میکنم وقتی میخوام پاکش کنم بکسپیس هندل نمیشود . چیکار میتونم بکنم . این کدم :
if (!(char.IsDigit(e.KeyChar)) || (char.IsControl(e.KeyChar)))
e.Handled = true;
Printable View
سلام . هنگامی که توی تکس باکس عددی رو وارد میکنم وقتی میخوام پاکش کنم بکسپیس هندل نمیشود . چیکار میتونم بکنم . این کدم :
if (!(char.IsDigit(e.KeyChar)) || (char.IsControl(e.KeyChar)))
e.Handled = true;
if (char.IsDigit(e.KeyChar) == true)
{
}
else if (e.KeyChar == '\b')
{
}
else if (e.KeyChar == '.' && txt.Text.IndexOf('.')<0)
{
}
else
{
e.Handled = true;
}
استفاده از OR در صورتی که از عملگر نقیض استفاده کنیم همون عمل رو انجام میده هیچ فرقی نداره .نقل قول:
واسه اینه که شما OR میکنید نه And و وقتی backspace میزنی چون عدد نیست دستورات اجرا میشن
این کد کار کرد .
if (!(char.IsDigit(e.KeyChar)) && !(char.IsControl(e.KeyChar))&& !(e.KeyChar!=(char)Keys.Back))
e.Handled = true;
سلام
int i = 0;
e.Handled = !int.TryParse(e.KeyChar.ToString(), out i) && !(e.KeyChar == (char)Keys.Back);
موفق وتندرست باشی
__________________________________________________ _________________________
چون به دریاه می توانی راه یافت.................سوی یک قطره چرا باید شتاف
توابعی که پارامتر با out دارن رو میشه بدون مقدار دهی اولیه متغیر، صدا زد.(فرقش با ref همینه)نقل قول:
int i = 0;
به 22 بهمن چه ربطی داشت ؟ آقا به خدا مشکلم حل شده از دوستمون هم تشکر کردم دیگه زحمت نکشید .نقل قول:
توابعی که پارامتر با out دارن رو میشه بدون مقدار دهی اولیه متغیر، صدا زد.(فرقش با ref همینه)