Ссылка на код находится здесь на моем github (было слишком долго, чтобы публиковать здесь):
https://github.com/alpizano/UI-Scrollbar/blob/master/ScreenLogic.vb
Я также добавил README.md, на котором элементы управления отмечены на экране
Я стажируюсь и пытаюсь исправить ошибку с программным обеспечением (используя Visual Studio, а код находится в VB.Net). По сути, это фрейм Windows Form (аналог «Panel»?) (FraAddress), который импортирует подэкран под названием «AddressEdit», который можно просто просмотреть на изображении ниже как поле адреса, содержащее улицу (streStreet), поля города (streCity), штата (streState), ZIP (streZip), округа (streCounty) и страны (streCountry). ComboBox «Description» и TextBox «SiteID» являются частью фрейма (fraAddress), но НЕ являются частью подэкрана «AddressEdit». TextBox в действительности называются StringEdits, а представления списков называются VirtualListViews в этом конструкторе программного обеспечения.
Проблема заключается в том, что каждый раз, когда вы используете левое вертикальное меню навигации для переключения экранов (скажем, переходя от «Сведения об учетной записи» к «Возможностям», а затем обратно к «Сведениям об учетной записи»), если вы нажмете внутри «AddressEdit», полоса прокрутки вправо (рамка fraDragDrop) переместится ВНИЗ (как видно на 2-м изображении ниже), когда вы вернетесь к экрану «Сведения об учетной записи». Однако, когда внутри любых других элементов управления, таких как список «Структура» или TextBox «Комментарии», переключаются экраны через левое навигационное меню, а затем возвращается к экрану «Сведения о счете», полоса прокрутки имеет вид FINE и НЕ ДВИЖЕТСЯ .
Есть ли у опытных разработчиков .NET с WindowsForms / Controls какие-либо идеи, что это может быть?
Существует функция «Активировано», которая вызывается каждый раз, когда экран переключается на «AccountDetail», и я пытался вручную установить фокус на «AddressEdit», но безрезультатно ... Мне кажется, что это «AddressEdit» - это вспомогательный экран, и попытка Focus () вызывает некоторые затруднения (ни один из других элементов управления не является вспомогательным экраном и работает нормально).
Даже при настройке focus (), чтобы сказать, TextBox «Имя учетной записи» вверху страницы вручную, когда страница перезагружается и пользователь нажимает внутри «AddressEdit», он действительно будет фокусироваться на TextBox. ... но полоса прокрутки по-прежнему скользит вниз и блокирует верхнюю часть рамки вне поля зрения ....
Я возьму любую помощь, которую смогу в этом ...;)