PDA

View Full Version : سوال: اجبار کاربر به نوشتن فارسی در تکست باکس



bitroo
شنبه 22 شهریور 1393, 19:46 عصر
سلام
من یه تکست باکس دارم که کاربر حتما باید توش فارسی بنویسه
برای رویداد TextChanged این تکست باکس این کد رو نوشتم که مثلا اگه انگلیسی نوشته شد، تکست باکس رو تخلیه کنه. اما اصلا توش هیچی نوشته نمی شه

if (InputLanguage.CurrentInputLanguage != InputLanguage.FromCulture(new CultureInfo("FA")))
{
Username.Text = "";
}
تو این حالت حتی اگه زبان فارسی هم باشه کیبورد، باز هم تکست باکس رو تخلیه می کنه
مشکلش چیه

دلتنگ اسمان
شنبه 22 شهریور 1393, 21:57 عصر
سلام.
اینطوری بنویس :

if (InputLanguage.CurrentInputLanguage.Culture.Displa yName != "Persian (Iran)")//"Persian (Iran)"
{
Username.Text = "";
}

forodo
شنبه 22 شهریور 1393, 23:22 عصر
سلام
اگر حتماً باید فارسی تایپ کنه به نظر من یه switch ... case بزار که مثلاً اگر حرف گرفته شده از کیبور a یا ش بود ش رو تایپ کنه و الی آخر.

farhad.k.t
یک شنبه 23 شهریور 1393, 00:17 صبح
از کد زیر استفاده کنید:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (InputLanguage.CurrentInputLanguage.Culture.Displa yName != "Persian")
{
e.Handled = true;
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new System.Globalization.CultureInfo("fa-IR"));
}
}