Практическое руководство. Загрузка изображения с помощью конструктора (Windows Form)
С помощью элемента управления PictureBox в Windows Forms можно загрузить и отобразить изображение в форме во время разработки, задав в качестве значения свойства Image допустимое изображение. В следующей таблице показаны допустимые типы файлов.
| Тип | Расширение имени файла |
|---|---|
| Bitmap | BMP |
| Icon | ICO |
| GIF | .gif |
| Метафайл | .wmf |
| JPEG | JPG |
Отображение изображения во время разработки
- Нарисуйте элемент управления PictureBox в форме.
- В окне Свойства выберите свойство Image, а затем нажмите кнопку с многоточием, чтобы открыть диалоговое окно Открытие.
- Если вы ищете определенный тип файла (например, GIF-файлы), выберите его в поле Файлы типа.
- Выберите файл для отображения.
Очистка изображения во время разработки
- В окне Свойства выберите свойство Image. Щелкните правой кнопкой мыши маленький эскиз изображения, который виден слева от имени объекта изображения, а затем выберите Сбросить.
См. также
- PictureBox
- Общие сведения об элементе управления PictureBox
- Практическое руководство. Изменение размера или размещения изображения во время выполнения
- Практическое руководство. Установка изображений во время выполнения
- Элемент управления PictureBox
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Загрузка и отображение картинки в Windows Forms c C#

В данном примере я покажу Вам как можно загрузить картинку из Интернета и отобразить ее в пользовательском интерфейсе. Изображение будет отображаться при нажатии на кнопку причем, каждый раз будет новое изображение.
Интерфейс MainForm.Designer.cs
namespace ShowImagwFromInternetWinForm
partial class MainForm
///
///
private System.ComponentModel.IContainer components = null;
///
///
/// true if managed resources should be disposed; otherwise, false.protected override void Dispose(bool disposing)
if (disposing && (components != null))
components.Dispose();
>
base.Dispose(disposing);
>
#region Windows Form Designer generated code
///
/// the contents of this method with the code editor.
///
private void InitializeComponent()
this.ImagePictureBox = new System.Windows.Forms.PictureBox();
this.DownloadImageButton = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.ImagePictureBox)).BeginInit();
this.SuspendLayout();
//
// ImagePictureBox
//
this.ImagePictureBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.ImagePictureBox.BackColor = System.Drawing.SystemColors.ActiveCaption;
this.ImagePictureBox.Location = new System.Drawing.Point(12, 12);
this.ImagePictureBox.Name = «ImagePictureBox»;
this.ImagePictureBox.Size = new System.Drawing.Size(435, 462);
this.ImagePictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.ImagePictureBox.TabIndex = 0;
this.ImagePictureBox.TabStop = false;
//
// DonwloadImageButton
//
this.DownloadImageButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.DownloadImageButton.Cursor = System.Windows.Forms.Cursors.Hand;
this.DownloadImageButton.Location = new System.Drawing.Point(12, 496);
this.DownloadImageButton.Name = «DonwloadImageButton»;
this.DownloadImageButton.Size = new System.Drawing.Size(435, 49);
this.DownloadImageButton.TabIndex = 1;
this.DownloadImageButton.Text = «Загрузить»;
this.DownloadImageButton.UseVisualStyleBackColor = true;
this.DownloadImageButton.Click += new System.EventHandler(this.DonwloadImageButton_Click);
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 19F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(459, 557);
this.Controls.Add(this.DownloadImageButton);
this.Controls.Add(this.ImagePictureBox);
this.Name = «Form1»;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = «Главное окно»;
((System.ComponentModel.ISupportInitialize)(this.ImagePictureBox)).EndInit();
this.ResumeLayout(false);
private PictureBox ImagePictureBox;
private Button DownloadImageButton;
>
>
Код формы с логикой программы
namespace ShowImagwFromInternetWinForm
public partial class MainForm : Form
public MainForm()
InitializeComponent();
>
/**
* Загружает изображение
* и возвращает его как массив байт
*
*/
private static byte[] DownloadImage(string url)
using var httpClient = new HttpClient();
var response = httpClient.GetByteArrayAsync(url).Result;
/**
*
* Обработчик нажатия кнопки загрзки
*
*/
private void DonwloadImageButton_Click(object sender, EventArgs e)
DownloadImageButton.Text = «Картинка загружается. «;
// вызываем загрузку внутри отдельной задачи, чтобы не блокировать интерфейс
Task.Run(() =>
// загружаем картинку
var imageBytes = DownloadImage(«https://source.unsplash.com/random»);
// создаем объект Bitmap из массива байт
var bitmap = new Bitmap(new MemoryStream(imageBytes));
// Устанавливаем изображение для отображение пользователю
ImagePictureBox.Image = bitmap;
Таким образом, при запуске этой программы Вы увидите пустое окно, в которое при нажатии на кнопку будет загружено изображение.

![]()
Создано 23.08.2022 08:29:08
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
- Кнопка:
Она выглядит вот так: - Текстовая ссылка:
Она выглядит вот так: Как создать свой сайт - BB-код ссылки для форумов (например, можете поставить её в подписи):
Комментарии ( 0 ):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.
Copyright © 2010-2024 Русаков Михаил Юрьевич. Все права защищены.
Как вставить картинку в windows forms c
PictureBox предназначен для показа изображений. Он позволяет отобразить файлы в формате bmp, jpg, gif, а также метафайлы ищображений и иконки. Для установки изображения в PictureBox можно использовать ряд свойств:
- Image : устанавливает объект типа Image
- ImageLocation : устанавливает путь к изображению на диске или в интернете
- InitialImage : некоторое начальное изображение, которое будет отображаться во время загрузки главного изображения, которое хранится в свойстве Image
- ErrorImage : изображение, которое отображается, если основное изображение не удалось загрузить в PictureBox
Чтобы установить изображение в Visual Studio, надо в панели Свойств PictureBox выбрать свойство Image. В этом случае нам откроется окно импорта изображения в проект, где мы собственно и сможем выбрать нужное изображение на компьютере и установить его для PictureBox:

И затем мы сможем увидеть данное изображение в PictureBox:

Либо можно загрузить изображение в коде:
pictureBox1.Image = Image.FromFile("C:\Users\Eugene\Pictures\12.jpg");
Размер изображения
Для установки изображения в PictureBox используется свойство SizeMode , которое принимает следующие значения:

- Normal : изображение позиционируется в левом верхнем углу PictureBox, и размер изображения не изменяется. Если PictureBox больше размеров изображения, то по справа и снизу появляются пустоты, если меньше — то изображение обрезается
- StretchImage : изображение растягивается или сжимается таким обраом, чобы вместиться по всей ширине и высоте элемента PictureBox
- AutoSize : элемент PictureBox автоматически растягивается, подстраиваясь под размеры изображения
- CenterImage : если PictureBox меньше изображения, то изображение обрезается по краям и выводится только его центральная часть. Если же PictureBox больше изображения, то оно позиционируется по центру.
- Zoom : изоражение подстраивается под размеры PictureBox, сохраняя при этом пропорции
Как отобразить изображение на элементе управления (Windows Forms .NET)
Некоторые элементы управления Windows Forms могут отображать изображения. Эти изображения могут быть значками, поясняющими назначение элемента управления, например значок дискеты на кнопке для команды «Сохранить». Кроме того, значки могут быть фоновыми изображениями создания необходимого внешнего вида и обозначения поведения элемента управления.
Документация по рабочему столу для .NET 7 и .NET 6 находится в стадии разработки.
Отображение изображения — конструктор
В Visual Studio для отображения изображения используйте визуальный конструктор.
- Откройте визуальный конструктор формы, содержащей элемент управления, который нужно изменить.
- Выберите элемент управления.
- На панели Свойства выберите свойство Image или BackgroundImage элемента управления.
- Нажмите кнопку с многоточием (
), чтобы открыть диалоговое окно Выбор ресурса, а затем выберите изображение, которое нужно отобразить. 
Отображение изображения — код
Задайте для свойства Image или BackgroundImage элемента управления объект типа Image. Как правило, изображение загружается из файла с помощью метода FromFile.
В следующем примере кода путем расположения изображения является папка Мои рисунки. На большинстве компьютеров, работающих под управлением операционной системы Windows, есть этот каталог. Это также позволяет пользователям с минимальным уровнем доступа к системе безопасно запускать приложение. В следующем примере кода предполагается, что у вас уже есть форма с добавленным элементом управления PictureBox.
// Replace the image named below with your own icon. // Note the escape character used (@) when specifying the path. pictureBox1.Image = Image.FromFile (System.Environment.GetFolderPath (System.Environment.SpecialFolder.MyPictures) + @"\Image.gif");
' Replace the image named below with your own icon. PictureBox1.Image = Image.FromFile _ (System.Environment.GetFolderPath _ (System.Environment.SpecialFolder.MyPictures) _ & "\Image.gif")
См. также
- System.Drawing.Image.FromFile
- System.Drawing.Image
- System.Windows.Forms.Control.BackgroundImage
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.