Скролл на Panel тянет за собой задний фон формы, если цвет panel полупрозрачный

Моя проблема наверно несколько тривиальна, но если найдется решение буду рад. Есть форма, на которой установлен задний фон. На форме есть панель, привязанная к верхнему краю и на задний цвет брошена полупрозрачность. В панели циклом создаются кнопки (если это вообще важно)

Смысл в том, что при прогрузке формы, все работает нормально. Фон формы равномерен и на пустом месте и на панели Прогрузка

Но стоит сместить скролл в сторону, как задний фон за панелью начинает ехать вместе с ним. После скролла

Возможно ли избежать подобного и если да, то каким способом.

Заранее благодарю.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading.Tasks;

namespace Students_Book_2_._1
{
public partial class proect : Form
{
    int btnSx = 80;
    int btnSy = 20;
    int pbSx = 80;
    int pbSy = 100;
    int posBX = 30;
    int posPX = 30;
    public proect()
    {
        InitializeComponent();
    }
    private Button[] _bt = new Button[50];
    private PictureBox[] _pb = new PictureBox[50];

    private void panel1_Paint(object sender, PaintEventArgs e)
    {
    }

    private void proect_Load(object sender, EventArgs e)
    {
        DoubleBuffered = true;
        panel1.BackColor = Color.FromArgb(100, 0, 0, 0);

        for (int i = 0; i < _bt.Length; i++)
        {
            _bt[i] = new Button();
            _bt[i].Tag = i;
            _bt[i].BackColor = Color.LightGray;
            _bt[i].ForeColor = Color.Red;
            _bt[i].Size = new Size(btnSx, btnSy);
            _bt[i].Location = new Point(posBX, 135);
            _bt[i].Text = "Добавить";

            panel1.Controls.Add(_bt[i]);
            posBX = posBX + btnSx + 20;
        }
        for (int i = 0; i < _pb.Length; i++)
        {
            _pb[i] = new PictureBox();
            _pb[i].BackColor = Color.LightGray;
            _pb[i].Location = new Point(posPX, 30);
            _pb[i].Size = new Size(pbSx, pbSy);

            panel1.Controls.Add(_pb[i]);
            posPX = posPX + pbSx + 20;
        }

        foreach (Button btn in _bt)
            btn.Click += (b, eArgs) =>
                MessageBox.Show(string.Format("Hello from button #{0}", ((Button)b).Tag));
    }


}

}


Ответы (0 шт):