مانده تا پایان تخفیف ۳۰ درصدی آموزش های ویدئویی سایت (کلیک کنید)

جدا کردن محیط طراحی از محیط کدنویسی

وقتی یک فرم ویندوزی جدید ایجاد می کنیم، یک کلاس که از System.Windows.Forms.Form ارث بری می کند تولید می شود. این کلاس به دو فایل جدا و وابسته به هم تقسیم می شود و یک کلاس تکه تکه (Partial class) را به وجود می آورد. کلاسهای تکه تکه(Partial classes) به شما اجازه تعریف جداگانه یک کلاس در فایل های مختلف در داخل یک پروژه وفضای نام یکسان را می دهند. با معرفی کلاس های partial در .NET 3.5 ویژوال استودیو قدرت جداسازی محیط طراحی از محیط کد نویسی را کسب کرد. این قابلیت به برنامه نویس اجازه می دهد که بر روی بخش کدنویسی برنامه تمرکز کند. به عنوان مثال نام فایلهای یک فرم به نام FormName در محیط های کدنویسی و طراحی به صورت زیر است:

FormName.cs 
FormName.Designer.cs

یک فایل سومی هم با پسوند .regx وجود دارد که در آینده در باره آن توضیح داده خواهد شد. بعد از ایجاد یک فرم، اضافه کردن کنترل و دستکاری خواص همه کدها همه در یک فایل تا حدودی مخفی با پسوند .Designer.cs نوشته می شوند. برای مشاهده این فایل می توانید از Solution Explorer استفاده کنید.
design-functionality-01
با دوبار کلیک بر روی این فایل به شما اجازه مشاهده همه کدهای ایجاد شده توسط ویژوال استودیو داده می شود. این کدها شامل متدهایی برای مرتب سازی و مقداردهی به کنترل ها می باشند. شما می توانید کنترل هایی را که تعریف شده اند و خواصی مانند محل و متن کنترل ، که شما در پنجره ی Properties به آنها مقادیری را اختصاص داده اید را مشاهده نمایید. همچنین قسمت Event handler را که به رویداد های کنترل ها وصل شده است را مشاهده می کنید. اگر نمی توانید قسمت کد را ببینید، به طور پیش فرض مخفی است و به قسمت “Windows Forms Designer generated code” متصل است برای نمایش آن بر روی آیکن + کلیک کنید تا قسمت کد نمایش داده شود. در آینده مشاهده خواهید کرد که مقدار دهی کنترل ها و خواص و رویدادهای مربوط به آنها در داخل متدی به نام InitializeComponent صورت می گیرد. این متد در داخل سازنده فرم واقع در کدهای اصلی کلاس فرم فراخوانی می شود. کد های نوشته شده در فایل Designer از چشم شما مخفی هستند چون Visual Studio می خواهد که شما به جای نوشتن کد به صورت دستی از پنجره Properties و محیط طراحی برای ایجاد یک برنامه ویندوزی استفاده نمایید.

لطفا اگر نظر، پیشنهاد و یا انتقادی در باره مطلب بالا دارید در قسمت زیر و اگر سوالی دارید در بخش پرسش و پاسخ مطرح بفرمایید.