Как установить положение полосы прокрутки в панели формы Windows (C #)

2

У меня есть много radiobutton в panel с автоматической прокруткой, установленной на true. Проверяется один из radiobutton. Я хочу убедиться, что проверенный должен быть видимым, т.е. Вертикальный scrollbar должен быть перемещен так, чтобы был отмечен отмеченный radiobutton.
Есть ли способ сделать это?

P.S. Я пробовал как рев, но он не работает.

RadioButton radiobutton = new RadioButton();
.....
panel.Controls.Add(radioButton);
if (some logic)
{
    radioButton.Checked = true;
    panel.ScrollControlIntoView(radioButton);
}
  • 0
    Я пробовал это тоже, но не работает панель. AutoScrollPosition = radioButton.Location
  • 0
    Также я не могу установить значение панели. AutoScrollPosition, это всегда 0,0
Показать ещё 1 комментарий
Теги:
winforms
scrollbar
radio-button
panel

1 ответ

3
Лучший ответ

Чтобы исправить это, я добавляю вышеупомянутый код (panel.ScrollControlIntoView(radioButton)) после отображения формы (т.е. в обработчике события для события form_Shown).

Теперь это работает. Но у меня все еще нет правильного объяснения этого.

  • 0
    было бы здорово, если бы кто-нибудь мог дать объяснение этому поведению. Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню