فونت زيبا سازفونت زيبا سازفونت زيبا سازفونت زيبا سازفونت زيبا سازفونت زيبا سازفونت زيبا ساز

لطفا از تمام مطالب دیدن فرمایید.

فصل ششم: نمایش کادر های محاوره ای(کنترل OpenFileDialog)

کنترل OpenFileDialog

تقریبا در نوشتن برنامه های ویندوز  شرایطی وجود دارد که بخواهید داده هایی را در فایل نوشته و یا از آن بخوانید، پس به کنترلی نیاز دارید تا به وسیله آن بتوانید فایلی را بز کنید و یا دادهایی را در یک فایل ذخیره کنید. در چارچوب .NET دو کنترل برای این موارد در نظر گرفته شده است: OpenFileDialog و SaveFileDialog . که در این آموزش ما با کنترل OpenFileDialog کار خواهیم کرد.
برای دسترسی به این کنترل در جعبه ابزار، باید به بخش Dialogs آن مراجعه کنید و با استفاده از ماوس این کنترل را بر روی فرم قرار دهید. بعد از آن تنها کاری که باید انجام دهید، این است که خاصیت های مورد نظرتان به وسیله پنجره Properties تنظیم کرده و سپس متد مربوط به نمایش آن را فراخوانی کنید.

خاصیت های کنترل  OpenFileDialog

خاصیت:

AddExtension :این خاصیت مشخص می کند که اگر کاربر پسوندی را برای فایل مشخص مکرد، برنامه به طور اتوماتیک پسوند را به فایل اضافه کند یا نه؟ این مورد بیشتر در پنجره SaveFileDialog که در بخش بعد توضیح داده خواهد شد استفاده می شود.
CheckFileExist: مشخص می کند که اگر کاربر آدرس فایلی را وارد کرد که وجود نداشت، برنامه پیغام خطایی نمایش بدهد یا نه؟
CheckPathExist: مشخص می کند که اگر کاربر آدرس مسیری را وارد کرد ..........................

فصل ششم: نمایش کادر های محاوره ای(کنترل OpenFileDialog)

کنترل OpenFileDialog

تقریبا در نوشتن برنامه های ویندوز  شرایطی وجود دارد که بخواهید داده هایی را در فایل نوشته و یا از آن بخوانید، پس به کنترلی نیاز دارید تا به وسیله آن بتوانید فایلی را بز کنید و یا دادهایی را در یک فایل ذخیره کنید. در چارچوب .NET دو کنترل برای این موارد در نظر گرفته شده است: OpenFileDialog و SaveFileDialog . که در این آموزش ما با کنترل OpenFileDialog کار خواهیم کرد.
برای دسترسی به این کنترل در جعبه ابزار، باید به بخش Dialogs آن مراجعه کنید و با استفاده از ماوس این کنترل را بر روی فرم قرار دهید. بعد از آن تنها کاری که باید انجام دهید، این است که خاصیت های مورد نظرتان به وسیله پنجره Properties تنظیم کرده و سپس متد مربوط به نمایش آن را فراخوانی کنید.

خاصیت های کنترل  OpenFileDialog

خاصیت:

AddExtension :این خاصیت مشخص می کند که اگر کاربر پسوندی را برای فایل مشخص مکرد، برنامه به طور اتوماتیک پسوند را به فایل اضافه کند یا نه؟ این مورد بیشتر در پنجره SaveFileDialog که در بخش بعد توضیح داده خواهد شد استفاده می شود.
CheckFileExist: مشخص می کند که اگر کاربر آدرس فایلی را وارد کرد که وجود نداشت، برنامه پیغام خطایی نمایش بدهد یا نه؟
CheckPathExist: مشخص می کند که اگر کاربر آدرس مسیری را وارد کرد که وجود نداشت، برنامه پیغام خطایی را نمایش یدهد یا نه؟
DefaultExt: پسوند پیشفرض را برای فایل انتخاب شده مشخص می کند.
DereferenceLinks: با شورت کان ها استفاده می شود و مشخص می کند که اگر کاربر بک شورت کات را انتخاب کرد، مسیر فایل برگشت داده شود (True) و ی مسیر خود فایل شورت کات به برنامه برگردد (False).
FileName: مشخص کننده نام فایلی است که در این پنجره انتخاب شده است.
FileNames: مشخص کننده نام فایل هایی است که در این پنجره انتخاب شده است.این خاصیت از نوع فقط خواندنی است.
Filter: این خاصیت حاوی رشته ای است که برای فیلتر کردن فایلهایی که باید در پنجره Open نمایش داده شوند به کار می رود. به وسیله این رشته می توانید، چندین گروه فیلتر را بری این پنجره مشخص کنید تا در جعبه ترکیبی موجود در این پنجره  نمایش داده شوند و کاربر بتواند یکی از آن ها را انتخاب کند.
FilterIndex: مشخص کننده شماره فیلتری است که کاربر هم اکنون در این صفحه انتخاب کرده است.
InitialDirectory: مشخص کننده آدرس مسیری است که باید در ابتدا در پنجره Open نمایش داده شود.
Multiselect: مشخص می کند ایا کاربر می تواند چندین فایل را در این پنجره انتخاب انتخاب کند یا نه؟
ReadOnlyChecked: مشخص می کند آیا قسمت ReadOnly در پنجره Open انتخاب شده است یا نه؟
RestoreDirectory: تعیین می کند آیا کادر Open باید در آدرس مسیری که قبل از بسته شده در آن قرار داشت را برگرداند یا نه؟
ShowHelp: مشخص می کند آیا دکمه Help نیز در پنجره Open نمایشد داده شود یا نه؟
ShowReadOnly: مشخص می کند آیا امکان تعیین این که فایل به صورت فقط_خواندنی باز شود برای کاربر وجود داشته باشد یه نه؟
Title: مشخص کننده متنی است که در نوار عنوان پنجره Open نمایش داده می شود.
ValidateNames: مشخص می کند که آیا پنجره فقط باید نام فایل های معتبر ویندوزی را قبول کند و یا هر نامی را می تواند دریافت کند؟

متد های OpenFileDialog

متد:

Dispose: حافظه اشغال شده توسط این کنترل را آزاد می کند.
OpenFile: فایلی را که به وسیله کاربر در پنجره Open انتخاب شده است به صورت فقط خواندنی باز می کند. نام فایل به وسیله خاصیت fileName مشخص می شود.
Reset: مقدار تمام خاصیت های کنترل OpenFileDialog را به حالت اولیه بر می گرداند.
ShowDialog: کادر محاوره ای پنجره Open را نمایش می دهد.
استفاده از تابع ShowDialog بسیار واضح است، زیرا این متد هیچ پتارامتری را به عنوان ورودی دریافت نمی کند. بنابراین قبل از اینکه این تابع را فراخوانی کنید، باید تمام خاصیت های مورد نظر را در کنترل تنظیم کنید. بعد از اینکه پنجره Open نمایش داده شد می توانید با یررسی مقدار خاصیت های کنترل مشخص کنید که چه فایل و چه فایل هایی، در چه مسیری انتخاب شده اند. یک نمونه از فراخوانی این متد در قطعه کد زیر است نمایش داده شده است

استفاده از کنترل OpenFiledialog

امتحان کنید: کار با کنترل OpenFileDialog

  • یک پروژه جدید به نام Dialogs ایجاد کنید.
  • برای تغییر نام خود، در پنجره Solution Explorer بر روی نام فرم کلیک راست کرده و از منوی باز شده گزینه Rename را انتخاب کنید. سپس نام فرم را به Dialog.cs تغییر دهید. با استفاده از پنجره Properties خاصیتهای فرم را به صورت زیر تغیرر دهید:
خاصیت Size آن را برابر با 304;456 قرار دهید.
خاصیت StartPosition را برابر Center Screen قرار دهید
خاصیت Tex را برابر با Dialogs قرار دهید.
  • برای اینکه فایل مشخص شده توسط کاربر را نمایش دهید، به یک کنترل TextBox نیاز دارید. بنابراین باید یک کنترل TextBox و یک کنترل Button به فرم خود اضافه کرده و خاصیت های آن را برابر اساس لیست زیر تنظیم کنید.
خاصیت کنترل TextBox
Name= txtFile
Anchor= Top،Right،Left،Bottom
Location= 8,8
MultiLine= True
ScrollBars= Vertical
Size= 352,264
خاصیت کنترل ButtonName= btnOpen
Text= Open
Anchor= Top,Right
Location= 367,8
  • حال فرم برنامه شما باید به شکل زیر باشد.
  • نکته: هنگامی که خاصیت Anchor را برای کنترل های این فم تنظیم کنیم، با تغییراندازه فرم به وسیله کاربر اندازه کنترل هانیز به صورت متناسب نیز تغییر خواهد کرد.
  • در نوار ابزار به قسمت Dialogs بروید، کنترل FileOpendialog را انتخاب کرده و بر روی آن دوبار کلیک کنید. مشاهده می کنید که این کنترل به قسمت پایین محیط طراحی ویژوال استودیو اضافه خواهد شد. حال می توانید این کنرل را در این قسمت انتخاب کنید و خاصیت های مختلف ان را به وسیله پنجره Properties تنظیم کنید. با وجود این فعلا نام و خاصیت های پیش فرض این کنترل ها را قبول کنید. در قسمت های بعدی با استفاده از کد خاصیت های مورد نظر را در این کنترل تغییر خواهیم داد.
  • به قسمت ویرایشگر کد بروید و در ابتدای کلاس مربوط به فرم، یک متغییر رشته ای تعریف کنید تا نام فایل در آن ذخیره شود. در قسمت های بعدی برنامه، نام فایلی که به وسیله کادر Open برگشته می شود را در این متغییر ذخیره خواهیم کرد:
  •  حالا باید کد مربوط به باز کردن کارد Open  را در رویداد کلیک کنترل btnOpen قرار دهیم. برای این کار به قسمت طراحی فرم بروید و بر روی این کنترل دو بار کلیک کنید کنید تا رویداد کلیک آن ایجاد شود. سپس کد های مشخص شده در زیر را به آن اضافه کنید:
  •  حال برنامه را اجرا کنید و بر روی دکمه Open کلیک کنید تا کادر محاواره ای Open نمایش داده شود.
  • همان طور که مشاهده می کنید عنوان کادر به صورتی که در کد مشخص کرده بودید تغییر کرده است. در جعبه ترکیبی File of Type در پایین کادر کلیک کنید مشاهده می کنید که دو نوع فیلتر برای نمایش فایل ها در نظر گرفته شده است، یکی از فیلتر های نمایش داده شده را انتخاب کنید و یک فایل متنی را در دیسک مشخص کرده و بر روی دکمه Open کلیک کنید.مشاهده خواهید کرد که همانند شکل زیر محتویات فایل در فرم نمایش داده خواهد شد.

دانلود سورس پروژه Dialogs

چگونه کار می کند؟؟

اولین کار قبل از نمایش کادر محاواره ای Open بایدبعضی از خصویات آن را تنظیم کنید تا کادر به نحویمناسب نمایش داده شود. اولین خاصیتی که باید تنظیم شود، خاصیت Filter است که به شما اجازه می دهد فیلتر هایی که در در جعبه ترکیبی File of Type در پایین کادر نمایش داده می شود را مشخص کنید. هنگامی که بخواهیم یک فیلتر پسوندی خاصی را ایجاد کنیم ابتدا توضیح آن فیلتر را وارد کرده، سپس یک خط عمودی (|) قرار دهید و در انتها نیط پسوند فایل را وارد کنید. اگر بخواهید چنید فیلتر در این کادر وجود داشته باشند، باید هر یک از آن ها به وسیله یک خط عمودی از یک دیگر جدا کنید.
 دومین خاصیتی که باید تنظیم شود خاصیت  پFilterIndex است که مشخص می کند که کدام فیلتر باید به صورت پیش فرض در نظر گرفته شود.
 مقدار یک  برای این خاصیت مشخص می کند که فیلتر اول به عنوان فیلتر پیش فرض در نظر گرفته شود.
در انتها نیز با استفاده از خاصیت Title عنوان پنجره Open را تغییر می دهیم.
 برای نمایش کادر Open باید از تابع Show  استفاده کنیم. همانطور که گفتم این تابع مقداری از نوع DialogResult را بر می گرداند که می تواند برابر با DialogResult.OK و DialogResult.Cancel باشد اگر کاربر در پنجره Open بر روی دکمه Open کلیک کند مقدار DialogResult.OK در تابع برگردانده می شود. در صورتی که کاربر دکه Cancel  را انتخاب کند مقدار بازگشتی برابر با DialogResult.Cancel خواهد بود

 

 

سپس با استفاده از تابع ReadAllText کلاس File و ارسال متغییر strFileName به عموان پارامتر، محتویات فایل را خوانده و نتیجه را که به صورت متغییر رشته ای برگشت داده می شود در TextBox قرار می دهیم.

 

 


برچسب‌ها:

تاريخ : سه‌شنبه 04 شهریور 1393 | 09:00 | نویسنده : کـــــوچـــــولـــــو | ارسال نظر(0)

لطفا از دیگر مطالب نیز دیدن فرمایید
.: Weblog Themes By SlideTheme :.
💬 نظرات کاربران
💬ثبت نام کاربران
💬ورود کاربران

Flying Icon