MultiBoolConverter.cs 909 B

1234567891011121314151617181920212223242526272829303132
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Globalization;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using System.Windows.Data;
  8. namespace ShakerManger.Convert
  9. {
  10. public class MultiBoolConverter : IMultiValueConverter
  11. {
  12. public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
  13. {
  14. if (values == null || values.Length == 0) return false;
  15. try
  16. {
  17. if (parameter != null) return values.Cast<bool>().Any(x => !x);
  18. return !values.Cast<bool>().Any(x => !x);
  19. }
  20. catch
  21. {
  22. return false;
  23. }
  24. }
  25. public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
  26. {
  27. throw new NotImplementedException();
  28. }
  29. }
  30. }