• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Статья C# Как загрузить картинку в picturebox из TreeView

Загружаем картинку в PictureBox из TreeView
В этой статье хочу показать, как загрузить картинку в PictureBox при выборе узла в элементе управления TreeView.

27528


Для начала создадим новый проект типа Windows Forms Application на языке c#. Затем добавим на форму два элемента управления: TreeView и PictureBox.

В элементе TreeView создадим дерево, состоящее из нескольких элементов.

C#:
private void CreateTree()
{
TreeNode root = treeView1.Nodes.Add("cars");
TreeNode firstChild = root.Nodes.Add("toyota");
firstChild.Nodes.Add("Corolla");
firstChild.Nodes.Add("Camry");
TreeNode lastChild = root.Nodes.Add("bmw");
lastChild.Nodes.Add("x5");
lastChild.Nodes.Add("x6");
}
Созданный метод поместим для выполнения в обработчике события Form_Load.

C#:
private void Form1_Load(object sender, EventArgs e)
{
CreateTree();
}
Теперь нам нужно сделать так, чтобы при выборе узла в элементе TreeView автоматически загружалась картинка в элемент управления PictureBox.

Получить выбранный узел в элементе TreeView можно разными способами, например, в данном примере для этого воспользуемся событием AfterSelect.

C#:
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
//получаем текстовое содержимое выбранного узла
string text = e.Node.Text;
//получаем индекс выбранного узла
int index = e.Node.Index;
}
Загрузить картинку в PictureBox можно следующим образом:

C#:
private void PictureBoxLoadImage(string path)
{
try
{
pictureBox1.Image = Image.FromFile(path);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Выбранное значение в элементе управления TreeView обработаем с помощью конструкции switch case.

C#:
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
switch (e.Node.Text)
{
case "corolla": PictureBoxLoadImage(@"c:\img\corolla.jpg"); break;
case "camry": PictureBoxLoadImage(@"c:\img\camry.jpg"); break;
case "x5": PictureBoxLoadImage(@"с:\img\x5.jpeg"); break;
case "x6": PictureBoxLoadImage(@"с:\img\x6.jpg"); break;
default: pictureBox1.Image = null; break;
}
}
Читайте также:
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!