طبیعتا با کلاس MessageBox موجود در فضای نامی System.Windows.Forms کار کردهاید؛ اما این کلاس، فقط برای نمایش متن با دکمههای از پیش تعریفشدهای به کار برده میشود. و حالا اگر بخواهیم علاوه بر نمایش متن و دکمه، یک ورودی نیز از کاربر دریافت کنیم، MessageBox فعلا این قابلیت را در اختیار ما قرار نمیدهد! پس بایستی راهحل دیگری بیابیم.
همانطور که میدانید، خود MessageBox یک فرم ویندوزی ساده بوده و برای ساخت چیزی همانند آن، میتوانیم خودمان یک فرم ویندوزی ایجاد کنیم! ولی این راه کمی طولانیتر خواهد شد و اگر قصد داشته باشیم در حالت ساده، یک ورودی از کاربر دریافت کنیم، میتوان از امکانات فضای نامی Microsoft.VisualBasic استفاده کرد. در ادامه هر دو روش را توضیح خواهیم داد.
روش اول: Microsoft.VisualBasic
از Solution، روی References راست کلیک کرده و Add Reference را انتخاب کنید. سپس عبارت Microsoft.VisualBasic را جستجو کرده و آن را به رفرنسهای پروژهی خود اضافه کنید.
حالا برای اینکه یک InputDialog ایجاد کنیم، بایستی به صورت زیر عمل کنیم:
1 |
string input = Microsoft.VisualBasic.Interaction.InputBox("توضیحات", "عنوان", "مقدار پیشفرض"); |
همه چیز واضح است؛ اما متد InputBox، علاوه بر سه ورودی بالا، دو ورودی دیگری نیز با نام xPos و yPos دریافت میکند که مقدار پیشفرض آنها روی -1 قرار داد و به معنای این است که دیالوگ، در وسط صفحه قرار گیرد. (البته نه اینکه -1 به وسط صفحه اشاره داشته باشد، بلکه در داخل متد، در صورتی که چنین چیزی تعریف شده باشد، آن را وسط صفحه در نظر میگیرد.)
روش دوم: شخصی سازی
این مورد قبلا در مطلب دیگری توضیح داده شده است. اینجا کلیک کنید.
نظرات ثبت شده بدون دیدگاه