• BoolToVisibilityConverter In WPF


    BoolToVisibilityConverter这个转换器用于判断 bool 转 Collapsed(不占空间) 还是Hidden(占空间)。

    [ValueConversion(typeof(bool), typeof(Visibility))]
        public class BoolToVisibilityConverter : IValueConverter
        {
            public BoolToVisibilityConverter()
                : this(true)
            {
     
            }
            public BoolToVisibilityConverter(bool collapsewhenInvisible)
                : base()
            {
                CollapseWhenInvisible = collapsewhenInvisible;
            }
            public bool CollapseWhenInvisible { get; set; }
     
            public Visibility FalseVisible
            {
                get
                {
                    if (CollapseWhenInvisible)
                    {
                        return Visibility.Collapsed;
                    }
                    else
                    {
                        return Visibility.Hidden;
                    }
                }
     
            }
            public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
            {
                if (value == null)
                    return Visibility.Visible;
                return (bool)value ? Visibility.Visible : FalseVisible;
            }
     
            public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
            {
                if (value == null)
                    return true;
                return ((Visibility)value == Visibility.Visible);
            }
        }

    使用:

      <converter:BoolToVisibilityConverter CollapseWhenInvisible="False" x:Key="_BoolToVisibilityConverter"/>

    CollapseWhenInvisible="False" 为占空间,

    CollapseWhenInvisible="True" 为不占空间,

    默认 CollapseWhenInvisible="True" 。


    作者:dingli
    出处:http://www.cnblogs.com/dingli/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    sqlserver用windows方式验证登录踩过的坑
    jdk8对象集合转map集合
    监听程序当前无法识别连接描述符中请求的服务解决方案
    Java上传文件至SFTP服务器
    记一次学习kibaba踩过的坑(Windows环境)
    CSRF跨站请求伪造与XSS跨域脚本攻击讨论
    LVS简单搭建(一)
    LVS+keepalived简单搭建(二)
    JZ2440开发板学习 1. 刚接触开发板, 安装驱动
    用STM32CubeMX创建FreeRTOS项目
  • 原文地址:https://www.cnblogs.com/dingli/p/2216559.html
Copyright © 2020-2023  润新知