У меня есть TabControl
, содержащий несколько вкладок. На каждой вкладке есть один UserControl
. Я хотел бы проверить видимость элемента управления x
на UserControl
A
из UserControl
B
. Я решил, что будет достаточно выполнить x.Visible
из UserControl
B
. Как оказалось, в отладчике отображалось false
, хотя я явно установил для него true
, и он никогда не менялся. Затем я прочитал в MSDN для Control.Visible , что:
Даже если для параметра Visible установлено значение true, элемент управления может быть невидим для пользователя, если он скрыт за другими элементами управления.
Так много к моему удивлению, это не сработает. Теперь мне интересно, как я могу определить, виден ли элемент управления x
из другого UserControl
. Я бы хотел по возможности избегать использования логического значения. Кто-нибудь сталкивался с этим и нашел решение?
Примечание: Также выясняется, что Control.IsAccessible
неверен в этой ситуации.