winforms c# в Main_form есть vScrollBar1 к tableLayout1. Сделай, что бы работала вертикальная прокрутка. Нельзя использовать tableLayoutPanel1.AutoScroll = True это ломает мой код.
Надо, что бы vScrollBar1 скроллил tableLayout1. Можешь опираться на то, все ли элементы видимые для пользователя. Если есть какие-то те, которые не видно, можно было бы прокрутить vScrollBar1 вертикально.
csharp
private void vScrollBar1_ValueChanged(object sender, EventArgs e)
{
// Получаем текущее значение положения ползунка
int scrollValue = vScrollBar1.Value;
// Устанавливаем видимость элементов tableLayoutPanel в зависимости от положения ползунка
foreach (Control control in tableLayoutPanel1.Controls)
{
int controlTop = tableLayoutPanel1.GetRow(control) * control.Height;
// Если элемент ниже видимой области - скрываем его
if (controlTop >= scrollValue + tableLayoutPanel1.Height)
{
control.Visible = false;
}
// Если элемент выше видимой области - показываем его
else if (controlTop + control.Height <= scrollValue)
{
control.Visible = true;
}
}
}
В данном примере мы обрабатываем событие `ValueChanged` для `vScrollBar1`, получаем текущее значение положения ползунка и настраиваем видимость элементов `tableLayoutPanel`. В цикле проходимся по всем элементам `tableLayoutPanel`, получаем их координаты и проверяем, должны ли они быть видны. Если элемент находится за пределами видимой области, мы скрываем его, иначе показываем.
Не забудьте также настроить начальные значения `Minimum`, `Maximum`, `LargeChange` и `SmallChange` для `vScrollBar1`, чтобы они соответствовали количеству элементов и требуемым настройкам прокрутки.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет