Dev2.Studio.Core.AppResources.Converters.IntInRangeToVisibilityConverter.Convert C# (CSharp) Method

Convert() public method

public Convert ( object values, Type targetType, object parameter, CultureInfo culture ) : object
values object
targetType System.Type
parameter object
culture System.Globalization.CultureInfo
return object
        public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
        {
            if(values == null || values.Length < 3)
            {
                return Visibility.Visible;
            }

            var value = (int)values[0];
            var min = 0;
            if(values[1] is int)
            {
                min = (int)values[1];
            }
            var max = int.MaxValue;
            if(values[2] is int)
            {
                max = (int)values[2];
            }

            if(min == max)
            {
                return Visibility.Visible;
            }
            return value >= min && value <= max ? Visibility.Visible : Visibility.Collapsed;
        }

Usage Example

        void Verify_Convert(object[] values, Visibility expectedVisibility)
        {
            //------------Setup for test--------------------------
            var converter = new IntInRangeToVisibilityConverter();

            //------------Execute Test---------------------------
            var result = converter.Convert(values, typeof(int), null, CultureInfo.CurrentCulture);

            //------------Assert Results-------------------------
            Assert.AreEqual(expectedVisibility, result);
        }
IntInRangeToVisibilityConverter