PDA

View Full Version : تغییر زبان پیش فرض در برنامه



harani
سه شنبه 04 مهر 1391, 14:13 عصر
سلام من یک برنامه دارم که چندین فرم داره میخوام زبان پیش فرض هر فرمی که اجرا میشه فارسی باشه . چون تعداد فرمام زیاده نمیخوام برای هر کدام تک تک کد زیر رو بنویسم آیا راهی است که زبان پیش فرض برای تمامی فرمها فارسی بشود . از تغییرات کنترل پنلم نمیخوام استفاده کنم .


InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.CreateSpecificCulture("FA-fa"));//a


با سپاس از همگی

mohsen92
سه شنبه 04 مهر 1391, 16:35 عصر
یک فرم بساز که این کد رو لودش نوشته باشی. بعد بقیه فرم هات از این فرم ارث بری کنن. این روش روشیه که خیلی کارهای تکراری رو فرم هاتو میتونی هندل کنی باهاش

hakim22
سه شنبه 04 مهر 1391, 16:43 عصر
تا جایی که یادمه شی Application هم گزینه ی Culture داره و با تغییر اون کل برنامه تغییر میکنه و هر فرمی که از درون اون بیرون میاد .

ali_habibi1384
سه شنبه 04 مهر 1391, 17:21 عصر
چند زبانه سازي (http://barnamenevis.org/showthread.php?355732-%D9%86%D8%AD%D9%88%D9%87-%D8%B3%D8%A7%D8%AE%D8%AA-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DA%86%D9%86%D8%AF-%D8%B2%D8%A8%D8%A7%D9%86%D9%87-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%D8%B3%D8%A7%D8%AF%D9%87-(Localization)&p=1568067&viewfull=1#post1568067): آموزش از آقاي جمشيدي مدير بخش

Mahmoud.Afrad
سه شنبه 04 مهر 1391, 17:53 عصر
بد متوجه شدید. ایشون میخوان زبان کیبرد با باز شدن هر فرمی فارسی بشه ولی نمیخواد توی هر فرم کد بنویسه.

راحت ترینش همونه که mohsen92 (http://barnamenevis.org/member.php?106953-mohsen92) گفتند.

Farshid007
سه شنبه 04 مهر 1391, 18:36 عصر
خوب گیریم 100 تا فرم داری خیلی سخته 100 بار کپی پست کنی؟

Y_Safaiee
سه شنبه 04 مهر 1391, 19:40 عصر
سلام دوست من

بلاخره همه این فرم ها تو یک فرم فراخوانی میشن و مسلما شما یک فرم والد دارید که توش گزینه هایی برای نمایش سایر فرم ها گذاشتید.تو فرم لود فرم والد زبان رو فارسی کنید تا وقتی Alt+shift ندین فارسی میمونه فقط در صورتی انگلیسی میشه که alt+shift نزنین یا تکس باکستون حالت انگلیسی رو انتخاب نکرده باشید (مثل بعضی تکس باکسها که میشه نحوه دریافت رو مشخص کرد)

اگه هم این شیوه رو دوست ندارید یه تابع بنویسید که نام فرم مورد نظرو بهش بدین اون بیاد زبانشو فارسی کنه بعد نمایشش بده

موفق باشی
بایت بایت

mhdhp86
چهارشنبه 05 مهر 1391, 10:50 صبح
من تو یکی از فرم هام قبلا دستور InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages رو داشتم و مشکلی هم نداشت.اما یک مدت پشتش // گذاشته بودم.
حالا که دوباره // رو برداشتم زیرش خط قرمز میاد! using اش رو هم برنداشتم هست.
وقتی inputlanguage رو میزنم مشکلی نداره میاد. اما وقتی بعدش نقطه میذارم هیچی نمیاد! میگه هیچ چیزی برای ارث بری ندارد!
چرا؟ چیزی رو جا انداختم؟

mhdhp86
چهارشنبه 05 مهر 1391, 15:11 عصر
من تو یکی از فرم هام قبلا دستور InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages رو داشتم و مشکلی هم نداشت.اما یک مدت پشتش // گذاشته بودم.
حالا که دوباره // رو برداشتم زیرش خط قرمز میاد! using اش رو هم برنداشتم هست.
وقتی inputlanguage رو میزنم مشکلی نداره میاد. اما وقتی بعدش نقطه میذارم هیچی نمیاد! میگه هیچ چیزی برای ارث بری ندارد!
چرا؟ چیزی رو جا انداختم؟
از خودم یک چیزی اختراع کردم بهش گیر نداد. اما نمی دونم باید با این lang که ساختم چه کار کنم؟! :گیج:



InputLanguage lang = InputLanguage.FromCulture(System.Globalization.Cul tureInfo.CreateSpecificCulture("Fa-IR"));

harani
چهارشنبه 05 مهر 1391, 19:34 عصر
کار خاصی نمیخواد بکنی که تو ویندوز Alt + Shift میزنی دیدی زبان تغییر میکنه . این کد هم این کار رو میکنه . یعنی اگر مثلاً تو رویداد کلیک باتن بنویسی با فشردت آن زبانت فارسی میشه . اگه تو فرم لود بنویسی با لود شدن آن زبان فارسی میشه . در کل این کد زبان فارسی رو ایجاد میکنه .

samadblaj
چهارشنبه 05 مهر 1391, 21:46 عصر
باید کلاس کد تغییر زبان رو فراخوانی کنی ولی باید یه راه اصولی پیدا کرد ...

harani
چهارشنبه 05 مهر 1391, 21:48 عصر
خب راه شما چی ؟؟؟؟؟؟