Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт по лабораторным.docx
Скачиваний:
43
Добавлен:
18.11.2022
Размер:
600.23 Кб
Скачать

Лабораторная работа № 2

Задание:

Разработать форму, дающую пользователю возможность передачи списков данных между различными визуальными элементами.

  1. Создать форму и нанести на неѐ два элемента ListBox и четыре кнопки.

  2. На кнопки нанести надписи: «>». «<», «>>»,»<<».

  3. Заполнить первый ListBox списком из 10 любых фамилий, второй ListBox оставить пустым.

  4. Написать программу, обеспечивающую пользователю возможность передавать данные из одного элемента ListBox в другой.

  5. При нажатии кнопки «>» обеспечить передачу выбранной фамилии из первого элемента ListBox во второй и одновременное изъятие еѐ из первого элемента ListBox.

  6. При нажатии кнопки «>>» обеспечить передачу всех оставшихся фамилий из первого элемента ListBox во второй и одновременное изъятие их из первого элемента ListBox.

  7. При нажатии кнопки «<»обеспечить передачу выбранной фамилии из второго элемента ListBox в первый и одновременное изъятие еѐ из второго элемента ListBox.

  8. При нажатии кнопки «<<» обеспечить передачу всех оставшихся фамилий из второго элемента ListBox в первый и одновременное изъятие их из второго элемента ListBox.

Ограничения:

1. Обеспечить доступность каждой из кнопок только в необходимые моменты времени.

Текст программы:

Главная форма проекта:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace Лабораторная__2

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

if(listBox1.SelectedIndex!=-1)

{

listBox2.Items.Add(listBox1.Items[listBox1.SelectedIndex]);

listBox1.Items.RemoveAt(listBox1.SelectedIndex);

}

button1.Visible = false;

button4.Visible = true;

}

private void button2_Click(object sender, EventArgs e)

{

if(listBox2.SelectedIndex!=-1)

{

listBox1.Items.Add(listBox2.Items[listBox2.SelectedIndex]);

listBox2.Items.RemoveAt(listBox2.SelectedIndex);

}

button2.Visible = false;

button3.Visible = true;

}

private void button3_Click(object sender, EventArgs e)

{

foreach (var obj in listBox1.Items)

listBox2.Items.Add(obj);

listBox1.Items.Clear();

button4.Visible = true;

button3.Visible = false;

button1.Visible = false;

}

private void button4_Click(object sender, EventArgs e)

{

foreach (var obj in listBox2.Items)

listBox1.Items.Add(obj);

listBox2.Items.Clear();

button3.Visible = true;

button4.Visible = false;

button2.Visible = false;

}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)

{

button1.Visible = true;

}

private void listBox2_SelectedIndexChanged(object sender, EventArgs e)

{

button2.Visible = true;

}

private void Form1_Load(object sender, EventArgs e)

{

}

}

}

Контрольный пример:

Образец главной формы проекта:

Результаты работы кнопок: