تبلیغات
banner
banner
banner
تبلیغات
banner

فیلم های آموزشی : 36 +

تعداد کاربران : 36 +

تعداد کل مطالب : 338 +

تعداد نظرات : 29 +

حضرت محمد (ص) : طلب دانش بر هر مسلمانى واجب است. خداوند جويندگان دانش را دوست دارد.

آموزش مقدماتی تا پیشرفته سی شارپ بخش صد و نودم


 به نام خداوند جان آفرین حکیم سخن در زبان آفرین



آموزش مقدماتی تا پیشرفته سی شارپ بخش صد و نودم

سلام به همه کاربران وب‌سایت لندلرن

قسمت صد و نودم


ادامه قسمت قبل….

اين پروژه نيز تقريباً مانند برنامه ي قبل است .

ابتدا يك ارجاع به برنامه ي FormsLibrary را در آن ايجاد كرده و فـضاي  نام FormsLibrary را نيز به آن اضافه مي كنيم .

سپس يك شيئ از نوع Login را در ابتداي كلاس ايجاد مي كنـيم تا تمام متد ها بتوانند به آن دسترسي داشته باشند.

براي اينكه بتوانيم رويداد هاي موجود در فرم Login را كنترل كنيم، بايد متد هايي كه مي توان در ليست اين رويداد هـا اضـافه كرد را ايجاد كنيم .

همانطور كه مي دانيد اين متد ها بايد داراي ساختار خاصي باشند و ساختار آنها نيز در كـلاس Login تعريـف شده است.

بنابراين سـه متـد بـه نـام هـاي

objLogin_LoginFailed و objLofin_LoginCancelled و objLogin_LoginSucceeded و _ ايجاد مي كنيم تا آن ها را به ليست رويداد هاي فرم Login اضافه كنيم .

نـام اين متد ها را مي توانيم به صورت دلخواه انتخاب كنيم .

معمولاً در ويژوال استوديو نام متد هايي كه براي رويداد خاصي هستند شامل نام كنترل به همراه با نام رويداد است .

در اين قسمت نيز از اين قاعده پيروي مي كنيم.

در اين قسمت نام هر متد مشخص مـي كنـد كه مربوط به چه رويدادي است، بنابراين ساختار آن متد را نيز برابر با ساختار مورد نياز براي آن رويداد در نظر مي گيريم.

درون هر يك از اين رويداد ها نيز كد مناسبي قرار مي دهيم تا در صورتي كه رويداد مربوطه رخ داد و اين متد ها اجـرا شـدند،

مـتن مناسبي در فرم نمايش داده شود.
هنگامي كه كاربر روي دكمه ي Login كليك كرد، بايد فرم Login را نمايش دهـيم .

بـراي ايـن كـار ابتـدا بايـد بـه شـيئ objLogin كه در ابتداي كلاس ايجاد كرديم مقدار اوليه دهيم.

بعد از انجام اين كار بايد متد هايي را كه در مرحله ي قبل ايجاد كرديم به رويداد هاي موجود در فرم Login اضافه كنيم .

بـراي اضافه كردن يك متد به يك رويداد، ابتدا بايد يك شيئ جديد از نوع delegateاي كه ساختار متـدهاي مـورد نيـاز بـراي آن رويداد را مشخص مي كرد ايجاد كرده و نام متد را به عنوان پارامتر به اين شيئ ارسال كنيم.

سپس اين شيئ را با اسـتفاده از عملگـر =+ به رويداد اضافه كنيم .

به اين ترتيب متد objLofin_LoginCancelled بـه رويـداد LoginCancelled اضـافه شـده، متـد objLogin_LoginFailed به رويداد LoginFailed اضافه شده و …. در انتها نيز كافي است با استفاده از متد ShowDialog فرم Login را نمايش دهيم.

در اين قسمت دو روش براي استفاده از فرم Login را مشاهده كرديد و همانطور كه در ابتداي هر كدام از ايـن روش هـا گفـتم، اين فرم مي تواند در هر كدام از اين شرايط (كه كاملاً متفاوت از هم نيز هستند) مورد استفاده قرار گيرد.

تنها كاري كـه كـافي اسـت انجام دهيد اين است كه توابع و متدهاي داخل فرم را به گونه اي تغيير دهيد كه نام كاربري و كلمه ي عبـور را بـه درسـتي بررسـي كرده و نتيجه را به فرم اصلي برگرداند .

نتيجه :

در قسمت های قبلی مشاهده كرديد كه چگونه مي توان يك رابط كاربري را در چند قسمت از برنامه و يا حتي در چند برنامه ي مختلف مورد استفاده قرار داد .

اين كار به دو روش امكان پذير است .

اول اينكه يك كنترل سفارشي با استفاده از كنترل هاي موجود ايجاد كـرده وسپس كارايي هاي مورد نياز خود را با اضافه كردن متد ها، خاصيت ها و يا رويداد هاي جديد در اين كنترل قرار دهيد .

سپس از ايـن كنترل مانند كنترلهاي ديگر از قبيل TextBox و يا Button در برنامه استفاده كنيد.

روش ديگر اين است كه فرمي را طراحي كرده و تمام متد ها و خاصيتهاي مورد نياز را به اين فرم اضافه كنيد.

سپس در هر قسمت از هر برنامه اي كه به اين فرم نياز داشتيد، آن را فراخواني كرده و از آن استفاده كنيد .

به اين ترتيب ميتوانيد ظاهري پيوسته و پايـدار براي برنامه هاي خود ايجاد كنيد .

در پايان اين بخش از دوره بايد با موارد زير آشنا شده باشيد :

  • يك كنترل ويندوزي چيست و چگونه كار مي كند؟
  • چگونه يك كنترل ويندوزي ايجاد كنيم؟
  • چگونه متد ها، خاصيت ها و يا رويداد هايي را به كنترل خود اضافه كنيم؟
  • زمان اجرا و زمان طراحي چيستند و چه تفاوت هايي دارند؟
  • چگونه يك كتابخانه ي كلاس ايجاد كنيم كه داراي فرم هاي عمومي پر كاربرد باشند؟

در ادامه دوره با ایجاد برنامه های گرافیکی با سی شارپ آشنا میشوید. به قسمت صد و نود و یکم مراجعه کنید.


درباره نویسنده
سجاد اسدی
   سجاد اسدی

سجاد اسدی هستم دانشجوی رشته نرم افزار و علاقه مند به تدریس و یادگیری دروس مرتبط با تکنولوژی نرم افزار و اینترنت اشیاء جهت ارتباط با بنده مراجعه شود به آیدی سروش و تلگرام : @ordervira و پیج بنده در اینستاگرام instagram.com/sajjadred11 ""اللهم صل علی محمد و آل محمد"" برای شروع هیچ وقت دیر نیست. "الهم عجل لولیک الفرج"

دیدگاه بگذارید

avatar
  اشتراک  
اطلاع رسانی

aparat کانال آپارات

soroush کانال سروش

کانال آی گپ