آموزش ASP.NET - جلسه هشتم 24/5/86
* کنترل چیست ؟ به ابزار آلاتی اطلاق می شود که برنامه نویس از آنها جهت تولید یک نرم افزار تحت وب و ارائه امکانات برنامه می پردازد .
* کنترل های .net دو دسته اند .
1- HTML Control
2- Server Control
* نگاهی به HTML Server ها : این دسته کنترل ها بیشر جهت چینش صفحه و در اصطلاح ساخت User Interface یا UI ( رابط کاربری ) بکار می روند .
* نگاهی به Server Control ها : هر کدام یک کلاس هستند ، که در صفحه در قالب یک عنصر html ارائه می شوند . با این تفاوت که دارای رویدادها ، متد ها و خصوصیات ( Property ) های خاص به خود هستند .
برای مشاهده ابزارهای قابل استفاده از در صفحات وب ، می توانید به toolbox ی که در سمت چپ صفحه ویژوال استودیو تعبیه شده است مراجعه کنید . در قسمت Standard مربوط به toolbox ، سرور کنترل ها قرار دارند و کنترل های html در قسمت html واقع شده اند .
از آنجایی که سرور کنترل ها دارای اعضای .net هستند ، ( یعنی دارای field, property, method,… ) اگر رویداد از یک سرور کنترل صدا زده شود ، آن رویداد در سمت سرور در جایی که برنامه اجرا شده است ( یعنی IIS ) ، Handle می شود . ( یعنی عمل Post Back اتفاق می افتد . ) به اتفاق افتادن رویدادها و handles شدن آنها اصطلاحاً post back گفته می شود .
* آشنایی با سرور کنترل ها ( Server Controls ) :
همانطور که در بالا آمد ، برای استفاده از سرور کنترل ها باید آنها را از قسمت toolbox به صفحه وب ( وب فرم ) ارسال نمود.
- کنترل Label :
هدف : نمایش متن ، بصورت متن ساده یا html در یک وب فرم .
معرفی تعدادی از Property های مهم :
ID : نام مورد استفاده برای کلاس قرار گرفته در این کنترل می باشد . که برنامه نویس از طریق این نام به سایر خصوصیات آن دسترسی می یابد .
BackColor : برای تنظیم رنگ زمینه کنترل استفاده می شود . در ضمن می توان برای تغییر رنگ کنترل از دستور
Me.mylable.backcolor = ( نام رنگ )
استفاده نمود . مثلاً :
Me.mylable.backcolor = draving.color.red
Csclass : برای تنظیم نام کلاس style بکار می رود .
Border class : برای تنظیم نوع حاشیه استفاده می شود .
Border width : تنظیم ضخامت
Enabled : جنس آن از نوع بولین است ( که فعال یا غیر فعال بودن کنترل را تعیین می نماید . اگر مقدار آن false باشد ، کاربر نمی تواند تغییری در این کنترل ایجاد کند ، یا رویدادهای آن را اجرا نماید .
Font : نوع قلم را تعیین می کند .
Forecolor : رنگ متن را تعیین می کند .
Visible : در صورت false بودن کنترل را مخفی می کند.
- کنترل Textbox :
هدف : جهت دریافت یک متن ورودی از کاربر به کار می رود .
معرفی تعدادی از Property های مهم :
Text : جهت دریافت یک متن ساده بکار می رود .
Max length : حداکثر طول متن را تعیین می کند .
Text mode : دارای سه حالت تنظیم است که عبارتند از : single lineکه کادر text box را بصورت یک خطی نمایش می دهد . multi line که کادر را به صورت چند خطی نمایش می هد . password که نوشته های داخل کادر به صورت رمز نشان داده می شود .
Read only : که جنس آن Boolean است و اگر true باشد ، متن کنترل قابل تغییر نخواهد بود .
Auto post back در صورت true بودن این خصوصیت ، رویدادهایی که احتیاج به post back دارند ( مثل : رویداد text change ) فعال می گردند .
- کنترل Button :
هدف : ساخت یک دکمه
معرفی تعدادی از Property های مهم :
On click : امکان بوجود آوردن رویدادهای کلیک و مانند آن را فراهم می کند . ( مثل : submit کردن فرم ) . این خصوصیت نام تابع جاوا اسکریپتی را می گیرد که قرار است در سمت کلاینت و با کلیک کردن اتفاق بیفتد .
رویدادها توسط یک procedure هندل می شود . این کار توسط دستور addhandle انجام می شود . اما شیوه دومی برای معرفی procedure به رویداد برای هندل کردن وجود دارد . که .net خودش از آن استفاده می کند . در این شیوه ، در زمان تعریف procedure کافی است . به صورت زیر عمل کنیم .
Public sub click-handler( … ) handles رویداد.نام کلاس , رویداد.نام کلاس
* تبدیل انواع داده ای : در برخی موارد برنامه نویس مجبور می شود ، نوع داده ای مورد نظر را به یک نوع داده ای دیگر تبدیل کند . برای اینکار از دستور directcast استفاده می کنیم .
Directcast ( نوع داده ای مبداء , نوع داده ای مقصد ) . text
( sender , button )
مثال :
Me.text1.text += directcast ( sender , button ) . text