PDA

نسخه کامل مشاهده نسخه کامل : MsgBox فارسی



bestdownload
14-03-2010, 17:20
سلام دوستان عزیز
من چند وقت پیش یه سورس دیده بودم که MsgBox رو توی دات نت فارسی می کرد
(دکمه هاشو‌ [OK,Yes,No])
اما الان هر چی میگردن پیداش نمی کنم.
اگه کسی می دونه یه کمکی بکنه
با تشکر

_H2_
18-03-2010, 14:05
سلام
MsgBox چیز خاص و پیچیده ای نیست!
کافی است یک فرم جدید ایجاد کنید و دکمه ها و Label مطلوب را در ان قرار دهید و با متد ShowDialog آن را نمایش دهید.

=====

من خودم یکسری dll برای کارهایم دارم و برای MessageBox فارسی از این استفاده میکنم.
لینک مستقیم و قابل استفاده در برنامه های مدیریت دانلود:
support.h02.ir/fwlink/?LinkId=1007064107
یا
h02.ir/Downloads/?familyid=2E14C711-AA5F-4AA6-AC5B-252E2DB914E7
(به فایل Program.cs و روال Main هم دقت کنید)

کافی است ghnet.win.dll را Add Reference کنید و به جای دستور System.Windows.Forms.MessageBox.Show از دستور GHNet.Windows.Forms.MessageBox.Show استفاده کنید.

در شرایط عادی و همینطوری GHNet.Windows.Forms.MessageBox.Show هم انگلیسی است!
ولی بعد از اجرای دستور زیر (یکبار در اولین اجرای برنامه) فارسی میشود:
(System.Threading.Thread.CurrentThread.CurrentUICu lture = new System.Globalization.CultureInfo(1065

با GHNet.Windows.Forms.MessageBox.Font هم میتوانید فونتش را عوض کنید (فونت بزرگ نگذارید)
((
با GHNet.Windows.Forms.MessageBox.SynchronizingObject هم میتواند ابزار را برای کار در محیط چند ریسمانی تنظیم کنید و اشاره گر Me کنترلر یا فرم برنامه را به ان دهید تا نمایش MessageBox را با ریسمان اصلی تنظیم کند و مشکلی پیش نیاید.

فقط برای کار در برنامه چند ریسمانی که اگر owner را پر کنید MessageBox خود دات نت خطا میدهد، اینطوری دیگر خطایی رخ نخواهد داد.
))

این کلاس به راحتی میتواند بین چند زبان سوییچ کند (الآن فقط انگلیسی و فارسی برایش تعریف شده ولی میتوانید زبانهای دیگر ا هم اضافه کنید) و وضعیت RightToLeft را هم تنظیم کند و مشکل فراخوانی چند ریسمانی را هم حل کند.

موفق باشید.