کنترل PictureBox

به وسیله‌ی کنترل PictureBox می‌توانید یک تصویر بر روی فرم قرار دهید. کار اصلی این کنترل نمایش دادن یک تصویر است. تمامی کاری که شما باید بکنید این است که عکس مورد نظر خود را انتخاب کنید تا Visual Studio/VCE آنرا به پروژه‌ی شما وارد کند. شما می‌توانید از فرمت‌های گوناگونی مثل Jpeg ،PNG ،BMP و GIF استفاده کنید.
picture-box-01
در جدول زیر برخی از خواص مفید این کنترل را مشاهده می‌کنید:

خواص توضیحات
ErrorImage تصویری که در موقع بالا نیامدن عکس مورد نظر به کاربر نمایش داده می‌شود.
Image عکسی که توسط این کنترل نمایش داده می‌شود.
ImageLocation مسیر تصویری که توسط PictureBox نمایش داده می‌شود.
InitialImage تصویری که در هنگام بارگذاری (Load) تصویر اصلی به کاربر نمایش داده می‌شود.
SizeMode به ما می‌گوید که تصویر چگونه نمایش داده خواهد شد. این خاصیت مقدار خود را از System.Windows.Forms.PictureBoxSizeMode می‌گیرد.
WaitOnLoad وقتی مقدار آن برابر با True باشد، همه‌ی کارهای (تراکنش‌ها) فرم را تا زمانی که تصویر به صورت کامل بارگذاری شود مسدود می‌کند.

برای نمایش یک تصویر در کنترل PictureBox، چند روش وجود دارد. شما می‌توانید به پنجره‌ی خواص (Properties) رفته و خاصیت Image را پیدا کنید. بر روی دکمه‌ی سمت راست آن کلیک کرده تا پنجره‌ی Select Resource باز شود.
در پنجره‌ی باز شده شما دو انتخاب دارید، یکی اینکه عکس مورد نظرتان را که در داخل یک درایو (Local resource) موجود است انتخاب کنید و دیگری اینکه عکس را قبلاً در داخل فایل پروژه (project’s resouce file) قرار داده‌اید وارد برنامه کنید.
picture-box-02
هر دوی آنها یک دکمه‌ی Import دارند که به شما اجازه می‌دهند که تصویر مورد نظر خود را به فرم اضافه کنید. وقتی که شما تصویر مورد نظر خود را انتخاب کردید، VS/VCE تصویر را به کنترل و یا منابع پروژه (Project Resource File) اضافه می‌کند. حال تصویر شما در داخل PictureBox نمایش داده می‌شود. به یاد داشته باشید که شما می‌توانید از خاصیت ImageLocation استفاده کنید که از شما مسیر تصویر مورد نظر در داخل هارد را درخواست می‌کند. همچنین شما می‌توانید از مسیر یک تصویر که بر روی صفحات وب قرار دارد استفاده کنید. ممکن است نمایش عکس با آن چیزی که شما انتظارش را دارید متفاوت باشد. اگر تصویر بزرگتر از سایز کنترل PictureBox باشد، فقط قسمتی از آن نمایش داده می‌شود. شما می‌توانید از خاصیت SizeMode برای تغییر سایز یا مکان تصویر در داخل کنترل استفاده کنید. این خاصیت از مقادیر شمارشی System.Windows.Forms.PictureBoxSizeMode که در جدول زیر مشاهده می‌کنید استفاده می‌کند:

نوع شمارشی
توضیحات
Normal تصویر در قسمت بالا-چپ جای می‌گیرد، و اگر تصویر از اندازه‌ی PictureBox بیشتر باشد، تصویر برش داده می‌شود (فقط قسمتی از آن نمایش داده می‌شود).
StretchImage سایز تصویر را متناسب با اندازه PictureBox تغییر می‌دهد و تمام عکس را نمایش می‌دهد.
AutoSize سایز PictureBox را متناسب با اندازه‌ی تصویر تغییر می‌دهد و قسمتی از عکس را نمایش می‌دهد.
CenterImage تصویر در وسط PictureBox قرار می‌گیرد. اگر سایز تصویر از سایز PictureBox بیشتر باشد، تصویر برش داده می‌شود (فقط قسمتی از وسط عکس در آن نمایش داده می‌شود).
Zoom همه عکس را طوری نمایش می‌دهد که شکل آن در کنترل تغییر نکند مثلاً کشیده نشود.

رویداد پیشفرض این کنترل، رویداد Click است، و زمانی رخ می‌دهد که بر روی عکس یا کنترل کلیک شود.