XAML控件使用"可见性"类型而不是普通"bool"的实际原因是什么?

Mar*_*han 1 c# silverlight wpf xaml

我们都知道XAML UIElements正在使用名为Visibility of type的属性

public enum Visibility { Visible, Collapsed }
Run Code Online (Sandbox Code Playgroud)

我的问题是,这个属性是Visibility类型的实际历史(?)原因是什么,而不仅仅是具有bool类型的普通IsVisible属性?

这肯定会节省我们花在编写/使用BoolToVisibilityConverters上的大量时间.

use*_*965 8

而不只是具有bool类型的普通IsVisible属性?

因为WPF中有多个值,而不仅仅是两个.有:

  • 分享范围
  • 倒塌

可见性枚举 - MSDN

WPF的可见性状态为隐藏.Silverlight不支持隐藏可见性状态.如果要从WPF XAML迁移XAML UI定义,则必须编辑任何尝试将"可见性"设置为"隐藏"的案例.