Использование control.Visible возвращает значение False, если оно находится на вкладке, которая не выбрана.

У меня есть форма с 2 вкладками. Форма открывается на вкладке 1. У меня есть несколько элементов управления, которые нужно проверить на вкладке 2.

Если для элементов управления, которые я хочу проверить, было установлено значение «Не видно», то я хочу игнорировать проверку. (т.е. элементы управления были скрыты от пользователя). Проблема в том, что все элементы управления на вкладке 2 возвращают значение Visible = False, поскольку вкладка не выбрана.

Becuase Visible для отдельного элемента управления возвращает значение False, если какое-либо из свойств Visible родительского элемента имеет значение False, я не могу выяснить, был ли для элемента управления установлен код Visible = False или Visible = False, поскольку родительский элемент управления вкладки не отображается.

Любые идеи, как я могу узнать, был ли элемент управления установлен в Visible = False в коде? Закрытая переменная «состояние» в классе управления, кажется, хранит эту информацию, но я бы предпочел не использовать рефлексию ... это будет медленно и выглядит немного странно!

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

Надеюсь, что это имеет смысл.

Спасибо майк г

Ответы на вопрос(3)

Ваш ответ на вопрос