Каковы различия между Visibility.Collapsed
и Visibility.Hidden
в WPF?
wpf
wpf-controls
visibility
Саурон
источник
источник
Ответы:
Разница в том, что
Visibility.Hidden
скрывает элемент управления, но резервирует пространство, занимаемое в макете. Таким образом, он отображает пробелы вместо элемента управления.Visibilty.Collapsed
не отображает элемент управления и не резервирует пробел. Пространство, которое займет элемент управления, «свернуто», отсюда и название.Точный текст из MSDN:
Смотрите: http://msdn.microsoft.com/en-us/library/system.windows.visibility.aspx
источник
Видимость: скрыто против свернуто
Рассмотрим следующий код, который только показывает
three Labels
и имеет второйLabel
visibility
какCollapsed
:Выход свернулся:
Теперь измените второй
Label
visibility
наHiddden
.Выход скрыт:
Так просто, как, что.
источник
Даже если немного старая тема, для тех, кто все еще ищет различия:
Помимо макета (пространства), взятого в Hidden и не взятого в Collapsed, есть еще одно отличие.
Если у нас есть собственные элементы управления внутри этого основного элемента управления «Свернутый», в следующий раз, когда мы установим для него значение Visible, он будет «загружать» все пользовательские элементы управления. Он не будет предварительно загружаться при запуске окна.
Что касается «Скрытого», он загрузит все пользовательские элементы управления + основной элемент управления, который мы установили как скрытый при запуске «окна».
источник