با سلام به همه دوستان
من میخواستم کاربر در textbox فقط فارسی بتواند تایپ کند. از چه روشی باید استفاده کنم؟
خیلی سرچ کردم اما راهی پیدا نکردم
با سلام به همه دوستان
من میخواستم کاربر در textbox فقط فارسی بتواند تایپ کند. از چه روشی باید استفاده کنم؟
خیلی سرچ کردم اما راهی پیدا نکردم
خب در رویداد کی پرس چک کن اگه زبان فارسی هست اجازه بده تایپ انجام بشه
با بررسی کد اسکی در رویداد key press
امکانش هست کدها را برای من ارسال کنید؟
این کد را بزار توی رخداد Enter تکست باکست
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.GetCultureInfo("fa-IR"));
البته این فقط موقع ورود زبان را فارسی میکنه میتونی واسه اینکه کاربر کرم نریزه موقع تکست چنج بزاری
در رخداد Enter تکست باکس کد زیر رو بنویس
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.GetCultureInfo("fa-IR"));
private void text1_KeyPress(object sender, KeyPressEventArgs e)
{
if ((e.KeyChar > 199 || e.KeyChar < 237) && (e.KeyChar < 1574 || e.KeyChar > 1594 && e.KeyChar < 1601 || e.KeyChar > 1608) && e.KeyChar != 1662 && e.KeyChar != 1668 && e.KeyChar != 1670 && e.KeyChar != 1705 && e.KeyChar != 1711 && e.KeyChar != 1740 && e.KeyChar != 8 && e.KeyChar != 32 )
{
e.Handled = true;
SystemSounds.Asterisk.Play();
this.Text = "( این کاراکتر مجاز به وارد شدن نیست ( لطفا از کاراکتر های فارسی استفاده کنید";
}
}
البته راه آسون تری هم هست
private void textBox1_KeyPress_1(object sender, KeyPressEventArgs e)
{
if (((e.KeyChar >= 'ا') && (e.KeyChar <= 'ی')&& e.KeyChar!=8)==false)
{
e.Handled = true;
MessageBox.Show("chang the language to persian");
}
}
آیا این راه ایرادی داره؟
بنظر من از کامپوننت TxtProNet کلی قابلیت داره و قابلیت تایپ فارسی و انگلیسی رو داره
انجمن رو سرچ کنید پیدا میکنید