Загрузка данных



using System;
using System.Drawing;
using System.Windows.Forms;

ApplicationConfiguration.Initialize();
Application.Run(new MainForm());

class MainForm : Form
{
    Random r = new Random();

    public MainForm()
    {
        Text = "Лабораторные работы №5 и №6";
        ClientSize = new Size(1000, 520);
        StartPosition = FormStartPosition.CenterScreen;
        BackColor = Color.WhiteSmoke;
        Font = new Font("Segoe UI", 11);
        FormBorderStyle = FormBorderStyle.FixedSingle;
        MaximizeBox = false;

        Color normalColor = BackColor;
        Font normalFont = Font;
        Font newFont = new Font("Consolas", 12, FontStyle.Bold);
        bool fontChanged = false;

        string[] names = { "Цвет кнопки", "Цвет окна",
                           "Случайный цвет", "Цвет из палитры",
                           "Шрифт текста" };

        Button[] b = new Button[5];

        for (int i = 0; i < 5; i++)
        {
            b[i] = new Button();
            b[i].Text = names[i];
            b[i].SetBounds(35, 40 + i * 70, 260, 50);
            Controls.Add(b[i]);
        }

        Color normalButtonColor = b[0].BackColor;

        Panel p = new Panel();
        p.SetBounds(720, 40, 245, 260);
        p.BackColor = Color.White;
        p.BorderStyle = BorderStyle.FixedSingle;
        Controls.Add(p);

        string[] colors = { "Жёлтый", "Белый", "Случайный" };
        RadioButton[] rb = new RadioButton[3];

        for (int i = 0; i < 3; i++)
        {
            rb[i] = new RadioButton();
            rb[i].Text = colors[i];
            rb[i].SetBounds(20, 25 + i * 55, 200, 35);
            p.Controls.Add(rb[i]);
        }

        Button ok = new Button();
        ok.Text = "ОК";
        ok.SetBounds(125, 195, 95, 40);
        p.Controls.Add(ok);

        PictureBox picture = new PictureBox();
        picture.SetBounds(340, 40, 345, 300);
        picture.BackColor = Color.White;
        picture.BorderStyle = BorderStyle.FixedSingle;
        picture.SizeMode = PictureBoxSizeMode.Zoom;
        Controls.Add(picture);

        Button choose = new Button();
        choose.Text = "Выбор изображения";
        choose.SetBounds(340, 360, 165, 45);
        Controls.Add(choose);

        Button show = new Button();
        show.Text = "Показать";
        show.SetBounds(515, 360, 80, 45);
        Controls.Add(show);

        Button hide = new Button();
        hide.Text = "Скрыть";
        hide.SetBounds(605, 360, 80, 45);
        Controls.Add(hide);

        Button exit = new Button();
        exit.Text = "Выход";
        exit.SetBounds(845, 450, 120, 45);
        Controls.Add(exit);

        b[0].Click += (s, e) =>
        {
            if (b[0].BackColor == Color.Red)
                b[0].BackColor = normalButtonColor;
            else
                b[0].BackColor = Color.Red;
        };

        b[1].Click += (s, e) =>
        {
            if (BackColor == Color.LightBlue)
                BackColor = normalColor;
            else
                BackColor = Color.LightBlue;
        };

        b[2].Click += (s, e) =>
            BackColor = Color.FromArgb(r.Next(256), r.Next(256), r.Next(256));

        b[3].Click += (s, e) =>
        {
            ColorDialog d = new ColorDialog();

            if (d.ShowDialog() == DialogResult.OK)
                BackColor = d.Color;
        };

        b[4].Click += (s, e) =>
        {
            fontChanged = !fontChanged;

            if (fontChanged)
                Font = newFont;
            else
                Font = normalFont;
        };

        ok.Click += (s, e) =>
        {
            if (rb[0].Checked)
                BackColor = Color.Yellow;

            if (rb[1].Checked)
                BackColor = Color.White;

            if (rb[2].Checked)
                BackColor = Color.FromArgb(r.Next(256), r.Next(256), r.Next(256));
        };

        choose.Click += (s, e) =>
        {
            OpenFileDialog d = new OpenFileDialog();
            d.Filter = "Изображения|*.jpg;*.jpeg;*.png;*.bmp;*.gif";

            if (d.ShowDialog() == DialogResult.OK)
            {
                Image img = Image.FromFile(d.FileName);
                picture.Image?.Dispose();
                picture.Image = img;
                picture.Visible = true;
            }
        };

        show.Click += (s, e) => picture.Visible = true;

        hide.Click += (s, e) => picture.Visible = false;

        exit.Click += (s, e) => Close();
    }
}