Różnica między widocznością.Upadł i widoczność.Ukryty
Jakie są różnice między Visibility.Collapsed
i Visibility.Hidden
w WPF?
3 answers
Różnica polega na tym, że Visibility.Hidden
ukrywa kontrolkę, ale rezerwuje miejsce, które zajmuje w układzie. Renderuje więc białe znaki zamiast kontrolki.
Visibilty.Collapsed
nie renderuje kontrolki i nie rezerwuje białych znaków. Przestrzeń, którą zajmie sterowanie, jest "zwinięta", stąd nazwa.
Dokładny tekst z MSDN:
Zwinięty: nie wyświetla elementu i nie rezerwuje dla niego miejsca w układzie.
Hidden : nie wyświetla element, ale zastrzega sobie miejsce na element w układzie.
Visible : wyświetla element.
Zobacz: http://msdn.microsoft.com/en-us/library/system.windows.visibility.aspx
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-29 14:41:32
Visibility: Hidden Vs Collapsed
Rozważ następujący kod, który pokazuje tylko three Labels
i ma drugie Label
visibility
jako Collapsed
:
<StackPanel Orientation="Horizontal" VerticalAlignment="Top" HorizontalAlignment="Center">
<StackPanel.Resources>
<Style TargetType="Label">
<Setter Property="Height" Value="30" />
<Setter Property="Margin" Value="0"/>
<Setter Property="BorderBrush" Value="Black"/>
<Setter Property="BorderThickness" Value="1" />
</Style>
</StackPanel.Resources>
<Label Width="50" Content="First"/>
<Label Width="50" Content="Second" Visibility="Collapsed"/>
<Label Width="50" Content="Third"/>
</StackPanel>
Wyjście Zwinięte:
Teraz zmień drugi Label
visibility
do Hiddden
.
<Label Width="50" Content="Second" Visibility="Hidden"/>
Wyjście Ukryte:
to takie proste.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-07 07:15:06
Choć trochę stary wątek, dla tych, którzy wciąż szukają różnic:
Oprócz układu (spacji) wziętego w ukryciu, a nie wziętego w zwinięciu, istnieje inna różnica.
Jeśli mamy niestandardowe kontrolki wewnątrz tej "zwiniętej" głównej kontrolki, następnym razem, gdy ustawimy ją na widoczną, "załaduje" wszystkie niestandardowe kontrolki. Nie wczytuje się wstępnie po uruchomieniu okna.
Jeśli chodzi o 'Hidden', załaduje wszystkie niestandardowe kontrolki + sterowanie główne, które ustawiamy jako ukryte, gdy "okno" jest uruchomione.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-12 00:00:06