Я играл с WPF Popup Control, и, насколько я вижу, свойство Видимость является излишним.Разница между свойствами IsOpen Popup и видимостью?
Если у вас есть всплывающее окно с IsOpen = True, оно будет видно, даже если его Видимость = Свернуто.
Если у вас есть всплывающее окно с IsOpen = False, то его видимость будет свернута и останется «скомпенсирована», когда IsOpen изменится на true и появится. (т. е. у вас будет что-то, что появляется на вашем экране, хотя Snoop говорит, что он скомпенсирован.)
Почему элемент управления Popup обладает обоими этими свойствами? Я что-то упустил?
@Ben Von Handorf: «... все, что имеет представление UI, наследуется от UIElement и поэтому получает свойство Видимость ... даже в тех случаях, когда это ничего не значит». Другими словами, я могу ожидать найти довольно много свойств, которые являются бесполезными, просто потому, что они унаследованы? – cfouche
Я не думаю, что многие из них будут бесполезны, но это всегда возможно. Этот случай несколько странный, поскольку, если они повторно использовали Visibility для обозначения «Open», что удивит большинство разработчиков. Это больше случай исключения, поскольку Popup не имеет «нормального» визуального представления, в то время как почти все остальное, которое наследуется от 'UIElement', делает (я не могу придумать другой контрпример с верхней части моей головы). –