【问题标题】:C# Window Visibility, collapsed and hiddenC# 窗口可见性,折叠和隐藏
【发布时间】:2013-11-08 06:29:13
【问题描述】:

我有一个关于应用程序中窗口可见性的快速问题。根据... http://msdn.microsoft.com/en-us/library/system.windows.visibility.aspx(简称)

当窗口折叠时,不会为布局中的窗口保留空间。当窗口被隐藏时,布局中为窗口保留空间。

我在这里很困惑,布局指的是什么?是指窗口空间吗?

【问题讨论】:

  • 只在wpf中使用,winforms不支持这种visibility,因为布局支持不好。
  • 该链接适用于 WPF Windows。我将标签更改为 WPF 而不是 Winforms
  • 假设您翻阅了许多记录。您希望按钮基于某些属性可见或不可见。如果将其设置为折叠,则其他内容将移动,但如果将其设置为隐藏,则其他内容不会移动。在那种情况下,我通常会使用隐藏,这样 Window 内容就不会四处移动。
  • 哇,谢谢大家的回复,谢谢大家!

标签: c# .net wpf visibility hidden


【解决方案1】:

这是一个插图:

 <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 会。

【讨论】:

    【解决方案2】:

    不,它指的是您正在查看的整个窗口。

    假设您在屏幕顶部有一个红色块(高度为 20 像素),而在红色块下方您有一个标题。

    隐藏:红色块不可见,但它通常保留的空间仍然保留,这意味着标题距离屏幕顶部 20px

    折叠:红色块与保留空间(20px 高度)一起不可见,这意味着标题位于屏幕顶部

    【讨论】:

      【解决方案3】:

      可见性不仅指窗口,还指所有控件。如果您使用自动放置其子控件的布局,则使用“隐藏”或“折叠”会有所不同。 'hidden' 表示布局控件在排列其子项时仍为其“保留空间”,而 'collapsed' 表示布局未为其保留任何空间。

      【讨论】:

        【解决方案4】:

        布局基本上是您的控件在表单中的整体放置,因此如果它折叠,则意味着它会在 UI 中消失,并且它的位置将被其他控件使用,但是当它隐藏时,它对用户来说是不可见的,但是它的位置不能被任何其他控件占用,它只是对用户不可见。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-07-04
          • 2019-04-13
          • 1970-01-01
          • 1970-01-01
          • 2017-01-15
          • 2017-01-14
          • 2010-11-11
          • 1970-01-01
          相关资源
          最近更新 更多