[英]Strange issue with setting visibility collapsed in grid (c#, xaml, UWP)
[英]C# Window Visibility, collapsed and hidden
我有一個關於應用程序中窗口可見性的快速問題。 根據... http://msdn.microsoft.com/en-us/library/system.windows.visibility.aspx (簡稱)
當窗口折疊時,不會為布局中的窗口保留空間。 當窗口被隱藏時,會為布局中的窗口保留空間。
我在這里很困惑,布局指的是什么? 它是指窗口空間嗎?
這是一個插圖:
<Grid>
<TabControl>
<TabItem Header="Visible"></TabItem>
<TabItem Visibility="Hidden" Header="Hidden">Hidden</TabItem>
<TabItem Visibility="Hidden" Header="Hidden">Hidden</TabItem>
<TabItem Visibility="Hidden" Header="Hidden">Hidden</TabItem>
<TabItem Header="Visible"></TabItem>
<TabItem Header="Visible"></TabItem>
<TabItem Header="Visible"></TabItem>
</TabControl>
</Grid>
將呈現這個:
這個 XAML:
<Grid>
<TabControl>
<TabItem Header="Visible"></TabItem>
<TabItem Visibility="Collapsed" Header="Collapsed">Collapsed</TabItem>
<TabItem Visibility="Collapsed" Header="Collapsed">Collapsed</TabItem>
<TabItem Visibility="Collapsed" Header="Collapsed">Collapsed</TabItem>
<TabItem Header="Visible"></TabItem>
<TabItem Header="Visible"></TabItem>
<TabItem Header="Visible"></TabItem>
</TabControl>
</Grid>
將呈現這個:
因此, Collapsed
不會節省空間,而Hidden
會。
不,它指的是您正在查看的整個窗口。
假設您在屏幕頂部有一個紅塊(20 像素高),在紅塊下方有一個標題。
隱藏:紅色塊不可見,但它通常保留的空間仍然保留,這意味着標題距離屏幕頂部 20px
折疊:紅色塊與保留空間(20px 高度)不可見,這意味着標題位於屏幕頂部
可見性不僅指窗口,還指所有控件。 如果您使用自動放置其子控件的布局,則使用“隱藏”或“折疊”會有所不同。 'hidden' 表示布局控件在安排其子項時仍為其“保留空間”,而 'collapsed' 表示布局未為其保留任何空間。
布局基本上是你的控件在表單中的整體放置,所以如果它折疊起來,這意味着它在 UI 中將不存在,它的位置將被其他控件使用,但是當它隱藏時,它對用戶來說是不可見的,但它的位置不能被任何其他控件占用,它只是對用戶不可見。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.