IsCollapsedConverter.cs 1009 B

123456789101112131415161718192021222324252627282930
  1. using System.Globalization;
  2. using System.Windows;
  3. using System.Windows.Data;
  4. using System.Windows.Markup;
  5. namespace Waaagh.Converters {
  6. internal class IsCollapsedConverter: MarkupExtension, IValueConverter {
  7. public object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
  8. if (value == null || parameter == null) {
  9. return Visibility.Visible;
  10. }
  11. if (value.GetType().Equals(parameter.GetType()) == false) {
  12. return Visibility.Visible;
  13. }
  14. if (value.Equals(parameter) == false) {
  15. return Visibility.Visible;
  16. }
  17. return Visibility.Collapsed;
  18. }
  19. public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
  20. throw new NotImplementedException();
  21. }
  22. public override object ProvideValue(IServiceProvider serviceProvider) {
  23. return this;
  24. }
  25. }
  26. }