کامپوننت MessageBox فارسی برای WPF
در این بخش یکی از کامپوننت های پر استفاده در برنامه های ویندوزی را آماده کرده ایم که می توانید در برنامه هایی که با استفاده از تکنولوژی WPF می سازید، از آن استفاده کنید. در ادامه می توانید توضیحات و دموی این کامپوننت را مشاهده کنید.
معرفی کامپوننت AmRoMessageBox
AmRoMessageBox شبیه به کامپوننت MessageBox پیشفرض می باشد با این تفاوت که امکانات و قابلیت های جدیدی به آن اضافه شده است. این کامپوننت به خوبی با زبان های RTL نیز سازگار است و می توان برای نمایش پیام های فارسی نیز از آن استفاده کرد. نسخه فریم ورک این کامپوننت 4.5 است.
ویژگی های AmRoMessageBox
- شامل چهار دکمه اصلی (Yes، No، Ok و Cancel)
- امکان تغییر اندازه فونت عنوان و متن پیام
- امکان تغییر رنگ قسمت های مختلف (مانند پس زمینه، متن پیام، آیکون و دکمه ها)
- امکان تنظیم افکت برای زمانی که MessageBox نمایش داده می شود
- امکان تنظیم متن دلخواه برای دکمه ها
- امکان تنظیم آیکون برای MessageBox
- سازگار با زبان های RTL و LTR
- ظاهر زیبا و کاربر پسند
نحوه نصب
برای استفاده از این کامپوننت ابتدا باید dll های آن را به پروژه خود اضافه کنید و سپس می توانید از کلاس AmRoMessageBox که در فضای نام AmRoMessageDialog قرار دارد استفاده کنید. به منظور نصب این کامپوننت از طریق NuGet Package Manager می توانید از دستور زیر استفاده کنید:
1 | Install-Package AmRoMessageBox |
یا آن را از سایت nuget دانلود کرده و به صورت دستی به بخش Reference پروژه اضافه کنید. همچنین مستندات انگلیسی کامپوننت را از سایت gitHub نیز می توانید مشاهده و دانلود کنید.
راهنمای استفاده
کامپوننت AmRoMessageBox را می توانید به دو روش زیر استفاده کنید:
- Static
- Non-Static
1- روش Static
در این روش مانند MessageBox عادی می توانید با نوشتن اسم کلاس به متد ShowDialog() دسترسی داشته باشید و با استفاده از آن پیام های خود را نمایش دهید. روش Static در مقایسه با روش Non-Static محدودیت هایی دارد. از جمله اینکه امکان تغییر متن دکمه ها، تغییر رنگ، تغییر اندازه فونت و تنظیم افکت برای MessageBox وجود ندارد.
مثال زیر نحوه استفاده از کلاس AmRoMessageBox به صورت static را نشان می دهد:
1 | AmRoMessageBox.ShowDialog("Your Message ... "); |
2- روش Non-Static
در این روش می توانید از کلاس AmRoMessageBox نمونه سازی کرده و خاصیت های دلخواه خود را بر روی آن اعمال کنید.
مثال زیر نحوه استفاده از کلاس AmRoMessageBox به صورت non-static را نشان می دهد:
1 2 3 4 5 6 7 8 9 10 11 12 | var messageBox = new AmRoMessageBox { Background = "#333333", TextColor = "#ffffff", IconColor = "#3399ff", RippleEffectColor = "#000000", ClickEffectColor = "#1F2023", ShowMessageWithEffect = true, EffectArea = this, ParentWindow = this }; messageBox.Show("Your Message ..."); |
Overload ها
متد ShowDialog() که به صورت static می باشد، پنج overload دارد که در زیر مشاهده می کنید:
1 2 3 4 5 | ShowDialog(string message, bool reverseContentDirection = false) ShowDialog(string message, string caption, bool reverseContentDirection = false) ShowDialog(string message, string caption, AmRoMessageBoxButton messageBoxButton, bool reverseContentDirection = false) ShowDialog(string message, string caption, AmRoMessageBoxButton messageBoxButton, AmRoMessageBoxIcon messageBoxIcon, bool reverseContentDirection = false) ShowDialog(string message, string caption, AmRoMessageBoxButton messageBoxButton, AmRoMessageBoxIcon messageBoxIcon, FlowDirection dircetion, bool reverseContentDirection = false) |
پارامترها (Parameters)
توضیحاتی در مورد پارامترهای موجود:
- message : محتوای پیام را مشخص می کند.
- caption : عنوان پیام را مشخص می کند.
- messageBoxButton : دکمه های MessageBox را مشخص می کند (Ok، OkCancel، YesNo و YesNoCancel).
- messageBoxIcon : آیکون MessageBox را مشخص می کند (None، Warring، Error و Success).
- direction : جهت MessageBox را مشخص می کند (RTL یا LTR).
- reverseContentDirection : جهت متن پیام را تغییر می دهد. یعنی اگر RTL باشد به LTR تبدیل می کند و بلعکس.
خاصیت ها (Properties)
در جدول زیر خاصیت های موجود در کلاس AmRoMessageBox را مشاهده می کنید:
خاصیت | نوع | توضیحات |
Background | string | رنگ پس زمینه را مشخص می کند |
TextColor | string | رنگ متن را مشخص می کند |
IconColor | string | رنگ آیکون را مشخص می کند |
WindowEffectColor | string | رنگ افکت را مشخص می کند |
EffectArea | object | ناحیه ای نمایش افکت را مشخص می کند |
RippleEffectColor | string | رنگ افکت Ripple دکمه ها را مشخص می کند |
ClickEffectColor | string | رنگ افکت Click دکمه ها را مشخص می کند |
FontFamily | FontFamily | فونت MessageBox را مشخص می کند |
EffectOpacity | double | میزان شفافیت افکت را مشخص می کند |
MessageFontSize | double | اندازه فونت محتوای پیام را مشخص می کند |
CaptionFontSize | double | اندازه عنوان پیام را مشخص می کند |
Direction | FlowDirection | جهت MessageBox را مشخص می کند |
ButtonsText | AmRoMessageBoxButtonsText | متن دکمه های MessageBox را مشخص می کند |
ParentWindow | Window | پنجره والد را مشخص می کند |
ShowMessageWithEffect | bool | مشخص می کند که آیا MessageBox هنگام نمایش افکت داشته باشد یا خیر |
سلام. میشه توی سی شارپ هم ازش استفاده کرد؟
سلام...اگه منظورتون از سی شارپ winForms باشه، خیر تو برنامه های WPF قابل استفاده است.
سلام عالی فقط ممنون شما می شوم برای ویندوز فرم هم این ابزار ارزشمند را بنویسید ممنون