PDA

View Full Version : سوال: تایپ عدد فارسی در textbox



maJJJid
پنج شنبه 03 مرداد 1392, 21:36 عصر
سلام خدمت همه دوستان.یک textbox رو محدود کردم که فقط عدد تایپ بشه داخلش.حالا میخام وقتی داخلش عدد تایپ میشه این اعداد فارسی باشه نه اعداد لاتین؟
ممنون.

sohil_ww
پنج شنبه 03 مرداد 1392, 22:34 عصر
از ماسک تکس باکس استفاده کن و فونتشو یا از فونتای فارسی بزار یا tohoma(اگه املاشو درست نوشته باشم)

davidrobert
پنج شنبه 03 مرداد 1392, 22:41 عصر
بفرمایید از این کد استفاده کنید در change text وقتی طرف میخواد انگلیسی چاپ کند کیبور فارسی میشه و نمیزار لاتین تایپ کنه و طرف مجبور میشه فارسی تایپ کنه.
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.CreateSpecificCulture("fa-IR"));

maJJJid
پنج شنبه 03 مرداد 1392, 23:32 عصر
از ماسک تکس باکس استفاده کن و فونتشو یا از فونتای فارسی بزار یا tohoma(اگه املاشو درست نوشته باشم)

نمیشه.دوست عزیز خودم یک کامپوننت ماسک تکس باکس نوشتم.

maJJJid
پنج شنبه 03 مرداد 1392, 23:33 عصر
بفرمایید از این کد استفاده کنید در change text وقتی طرف میخواد انگلیسی چاپ کند کیبور فارسی میشه و نمیزار لاتین تایپ کنه و طرف مجبور میشه فارسی تایپ کنه.
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.CreateSpecificCulture("fa-IR"));

دوست عزیز این کد برای تایپ حروف فارسیه نه اعداد فارسی.

1009645
پنج شنبه 03 مرداد 1392, 23:42 عصر
سلام خدمت همه دوستان.یک textbox رو محدود کردم که فقط عدد تایپ بشه داخلش.حالا میخام وقتی داخلش عدد تایپ میشه این اعداد فارسی باشه نه اعداد لاتین؟
ممنون.

میشه کدی که محدود کردید که فقط اعداد وارد بشه رو قرار بدید تا دوستان هم استفاده کنند ؟ مخصوصا خود بنده خیلی مشتاقم که کد رو ببینم :قلب:

kazem235
پنج شنبه 03 مرداد 1392, 23:50 عصر
این یه روشه اما روش های دیگه ای هم هست.

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar < 48 && e.KeyChar > 57)
{
e.Handled = true;
MessageBox.Show("( این کاراکتر مجاز به وارد شدن نیست ( لطفا از کاراکتر های عددی استفاده کنید");
}
}

kazem235
پنج شنبه 03 مرداد 1392, 23:54 عصر
دوست عزیز خیلی از فونت ها هستند که عدد فارسی می نویسند.چرا از اونها استفاده نمیکنید؟

maJJJid
جمعه 04 مرداد 1392, 00:00 صبح
میشه کدی که محدود کردید که فقط اعداد وارد بشه رو قرار بدید تا دوستان هم استفاده کنند ؟ مخصوصا خود بنده خیلی مشتاقم که کد رو ببینم :قلب:

خودم یه کامپوننت جدید MaskTextBox نوشتم.کد هاش خیلی زیاده.واسه محدود کردن ورود اعداد یه سرچ کوچولو بزنی به جواب میرسی دوست عزیز.

maJJJid
جمعه 04 مرداد 1392, 00:03 صبح
دوست عزیز خیلی از فونت ها هستند که عدد فارسی می نویسند.چرا از اونها استفاده نمیکنید؟

روی همه سیستم ها جواب نمیده.خودم راهشو میدونم.اینه که باید کد اسکی اعداد فارسی نوشته بشه.حالا چطور, دنبالشم.

abdullah20
جمعه 04 مرداد 1392, 00:11 صبح
چند تا راه وجود داره
1- استفاده از کد زیر :

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if ((int)e.KeyChar >= 48 && (int)e.KeyChar < 58)
e.KeyChar = (char)(1632 + int.Parse(e.KeyChar.ToString()));
else
e.Handled = true;
}

2-انتخاب یک فونت فارسی برای تکسباکس(بهترین راه هستش)

erfan_urchin
جمعه 04 مرداد 1392, 01:50 صبح
سلام خدمت همه دوستان.یک textbox رو محدود کردم که فقط عدد تایپ بشه داخلش.حالا میخام وقتی داخلش عدد تایپ میشه این اعداد فارسی باشه نه اعداد لاتین؟
ممنون.

دوست عزیز به نظر من بهترین راه روش زیره که 3 مرحله داره
1- این کد رو توی KeyPress بنویس
private void textBox6_KeyPress(object sender, KeyPressEventArgs e)
{
if ((e.KeyChar < '0' || e.KeyChar > '9') && e.KeyChar != '\b')
e.Handled = true;
}
2- توی پراپرتی های تکست باکس ، خاصیت RightToLeft رو Yes کن
3- توی پراپرتی های تکست باکس ، خاصیت TextAlign رو Center کن

davidrobert
جمعه 04 مرداد 1392, 03:55 صبح
داداش مقدار جهت دهی تکس باکست رو راست چین کن فارسی میتونی وارد کنی اعداد رو من که تو سیستمم مقدار رو راست چین میزارم عداد فارسی میشه و چپ چین میکنم عداد انگلیسی میشی میخواهی شما هم یه امتحان کنید شاید جواب گرفتید دیدید جواب نگرفتید از تنظیمات ویندوز برای طرف فاسی کنید عدد رو دیگه با مشکلی بر خورد نمیکنید.

maJJJid
شنبه 05 مرداد 1392, 09:09 صبح
چند تا راه وجود داره
1- استفاده از کد زیر :

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if ((int)e.KeyChar >= 48 && (int)e.KeyChar < 58)
e.KeyChar = (char)(1632 + int.Parse(e.KeyChar.ToString()));
else
e.Handled = true;
}

2-انتخاب یک فونت فارسی برای تکسباکس(بهترین راه هستش)


ممنونم دوست عزیز.ردیف شد.