* کنترل چیست ؟ به ابزار آلاتی اطلاق می شود که برنامه نویس از آنها جهت تولید یک نرم افزار تحت وب و ارائه امکانات برنامه می پردازد .

 

* کنترل های .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