zoukankan      html  css  js  c++  java
  • 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/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    倍增或线段树,给出一个数,让它模一连串的数
    江西财经大学第一届程序设计竞赛
    L2-027. 名人堂与代金券
    hdu 3038 给区间和,算出多少是错的
    cf166e 在四面体上寻找路线数 递推,取模
    cf946d 怎样逃最多的课dp
    PAM练习
    PAM模板
    E. Erase Subsequences dp
    CSU2004:Finding words(含指定不相交前后缀的模式串计数)
  • 原文地址:https://www.cnblogs.com/dingli/p/2216559.html
Copyright © 2011-2022 走看看