مدیریت رویدادها خارج از Custom Control

دوره ی فشرده: آموزش ایجاد و استفاده از کنترل های نوع ASP.Net Custom Server Control

صفحۀ اصلی |> مدیریت رویدادها خارج از Custom Control

خب دوستان، خسته نباشید. برای اینکه توانسته‌اید همگام با این دوره‌ی آموزشی، تا به این نقطه پیش آیید، به شما تبریک می‌گویم. تاکنون یک کنترل از نوع Custom Control ایجاد کرده‌ایم و برای آن، علاوه بر یک سری ریزه‌کاری‌ها، توانسته‌ایم یک رویداد داخلی (به کمک دکمه‌یClear) ایجاد کنیم. اکنون نوبت آن است که یک رویداد خارجی هم به کنترل خود بیافزاییم. رویدادهای خارجی کنترل، رویدادهایی هستند که در زمان رخ دادن، کاری در بیرون از کنترل صورت می‌پذیرد، به‌عبارت دیگر، کدهایی که موظف به هندل کردن این گونه از رویدادها هستند، در داخل برنامه‌ای نوشته می‌شوند که از آن کنترل استفاده می‌کند، و نه در داخل کدهای داخلی خود کنترل.

یک رویداد خارجی که می‌تواند برای کنترل ما تعریف شود، رویداد تحویل دادن متنی که کاربر در کادر داخلی کنترل نوشته، به کدهای برنامه‌ی استفاده کننده از کنترل، با زده شدن دکمه‌ی Submit می‌باشد. در این مرحله از دوره، خواهید آموخت چگونه می‌توانیم این رویداد را برای کنترل خود تعریف کنیم. خواهید دید که با افزودن این رویداد به کنترل، در بخش Events پنجره‌ی Properties محیط Visual Studio، یک ردیف به نام DataSubmited اضافه خواهد شد که استفاده از کنترل به راحتی می‌تواند در آن قسمت، نام متدی (تابعی) که قرار است رویداد مربوطه را هندل کند را وارد کند.

خب، برای شروع کار، ابتدا ...

.

.

.

توجه: بخش‌هایی از این آموزش برای شما قابل مشاهده نیست.

مطالعه‌ی بیشتر در صورتی امکانپذیر است که در سایت لاگین کرده باشید - (دوره‌ی غیر رایگان) ...

.

.

.

... اکنون که یک نمونه از کنترل جدیدمان را بر روی صفحه درگ کردیم، مطابق شکل 9، در حالت نمایش Design، کنترل افزوده شده به صفحه را انتخاب کرده و پنجره‌ی Properties را باز می‌کنیم.

شکل 9. باز کردن پنجره‌ی Properties برای کنترل جدید

پس از دیده‌شدن خصوصیات کنترل در پنجره‌ی Properties، ابتدا مطابق شکل 10، متنی را برای دیده‌شدن بر روی دکمه‌ی Submit اختصاص می‌دهیم. من از همان عبارت Submit استفاده می‌کنم اما شما در این بخش آزاد هستید هر عبارتی را وارد کنید.

شکل 10. اختصاص متن بر روی دکمه‌ی Submit

سپس مطابق شکل 11، در همان پنل Properties به بخش Events می‌رویم.

شکل 11. رفتن به بخش Events

شکل 12، ردیفی که مربوط DataSubmited است را نشان می‌دهد. ما می‌توانیم در این ردیف نام متدی که موظف به هندل کردن رویداد Submit است را وارد کنیم البته برای این کار، لازم است قبلا کدهای چنین متدی را نوشته باشیم، اما راحت‌تر این است که مقابل عبارت DataSubmited دابل کلیک کنیم تا خود Visual Studio بصورت اتوماتیک یک متد را برای ما بسازد و ما فقط موظف به نوشتن کدهای داخلی متد باشیم. من در این مرحله، در محل نشان داده شده با فلش قرمز رنگ، دابل کلیک می‌کنم.

شکل 12. ردیف DataSubmited

با این کار، مطابق شکل 13، در داخل فایل cs (کلاس برنامه)، یک متد آماده اما توخالی ایجاد می‌شود. این متد درواقع همان متدی است که رویداد خارجی کنترل ما را مدیریت خواهد کرد.

شکل 13. متد ایجاد شده در فایل cs

در این مرحله، لازم است کدی در داخل این متد بنویسیم که مقدار برگشته از کنترل را دریافت کرده و کاری با آن انجام دهد. کاری که مدنظر من است، نشان دادن آن متن در ابتدای صفحه با کد Response.Write است، شکل 14.

شکل 14. استفاده از کد Response.Write

برای این منظور، مطابق شکل 15، کد نشان داده شده را می نویسم. با این کد، مقداری که کنترل تحویل داده است، بر بالای آن مشاهده خواهد شد. صفحات را Save می‌کنم و وب سایت را اجرا می کنم.

شکل 15. برنامه ی مدیریت رویداد خارجی کنترل

پس از دیده شدن کنترل در مرورگر، می‌توانیم آنرا تست کنیم. من برای امتحان کنترل، مطابق شکل 16، نام دامین وب‌سایت خودمان یعنی عبارت oxford.plus را تایپ کرده و دکمه‌ی Submit را کلیک می کنم.

شکل 16. وارد کردن یک عبارت در کادر داخلی کنترل

و نهایتا، چنانچه در شکل 17 ملاحظه می‌شود، عبارت وارد شده در کنترل، با موفقیت تحویل داده شد و در بالای کنترل به نمایش درآمد.

شکل 17. نمایش عبارت تحویل داده شده

در این نقطه، دوره‌ی آموزشی ما به پایان می‌رسد. خسته نباشید عرض می‌کنم و منتظر حضور شما در دوره‌های آموزشی بعدی‌مان هستم.

شاد و پیروز باشید.

مدیریت وب‌سایت آکسفورد پلاس.

نوشته شده توسط: مهندس عبدالرضا قنبری

تاریخ های بروز رسانی این صفحه

  • 24 February 2020 - 1398/12/05
  • 16 December 2017 - 1396/09/25

شما در این بخش می توانید نظر خود را به گوش نویسندۀ مطالب این صفحه برسانید. نظرات شما برای ما ارزشمند هستند:

نام شما (اختیاری):
آدرس ایمیل شما (اختیاری):
توجه: آدرس ایمیل شما بصورت محرمانه، محفوظ نگه داشته خواهد شد و صرفا از آن برای اطلاع رسانی به شما در مورد نتیجۀ پاسخ گویی به نظرتان و احیانا ارسال خبرنامه های دو وبسایت ما یعنی آموزین و آکسفورد+ استفاده خواهد شد، بطوریکه شما هر لحظه می توانید آن را غیرفعال کنید.
نظر ارزشمند شما:

فرآیند امنیتی: لطفا قبل از ارسال نظر، مجموع دو عدد 4 و 0 را در کادر مقابل بنویسید:
دربارهی ما

Your IP address: 3.235.227.117 ... Current time: 8/5/2021 7:24:45 PM

Oxford Plus Academy

شبکه های اجتماعی وب سایت
-----------------------
تویتر وب سایت https://twitter.com/oxford_plus
صفحه فیس بوک وب سایت https://facebook.com/oxfordpluspage
آی دی تلگرام وب سایت آکسفورد پلاس @oxfordplus
آی دی اینستاگرام صفحه اختصاصی محصول ماسک صورت اسپیرولینا @spirulinaoxfordplus

راه های تماس با مدیریت وب سایت
----------------------
ایمیل abdolreza_ghanbari@yahoo.com
فیس بوک مدیریت https://www.facebook.com/ARezaGhanbari
تلفن تماس مدیریت وب سایت (مهندس قنبری): 09052358238
آدرس دفتر وب سایت: آذربایجان غربی - میاندوآب - خیابان تختی- پلاک 330
کد پستی: 5971817118

Video sharing addresses:
----------------------
https://youtube.com/channel/UC3wT15qSyXQnu_IVj8OqGqw
https://takhtesefid.org/user/amoozin
https://www.aparat.com/oxford.plus