JobDocumentSetDetailsConverter.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System;
  2. using System.Globalization;
  3. using System.Windows;
  4. using System.Windows.Data;
  5. using Comal.Classes;
  6. using InABox.Core;
  7. namespace PRSDesktop
  8. {
  9. public class JobDocumentSetDetailsConverter : IValueConverter
  10. {
  11. public object Convert(object value, Type t, object parameter, CultureInfo culture)
  12. {
  13. try
  14. {
  15. if ((value == null) || String.Equals(value,""))
  16. return "";
  17. var details = Serialization.Deserialize<JobDocumentSetDetailsBlock>(value.ToString());
  18. if (String.Equals(parameter, "ID"))
  19. return details.ID;
  20. if (String.Equals(parameter, "Date"))
  21. return details.Date.IsEmpty() ? "" : String.Format("{0:dd MMM yy}",details.Date);
  22. if (String.Equals(parameter, "Size"))
  23. return (details.Size == PaperSize.NotSet) && String.IsNullOrWhiteSpace(details.Scale) ? "" : String.Format("{0} {1}",details.Size.ToString(), details.Scale).Trim();
  24. if (String.Equals(parameter, "Employee"))
  25. return details.Employee;
  26. return parameter.ToString();
  27. }
  28. catch (Exception e)
  29. {
  30. return e.Message;
  31. }
  32. }
  33. public object ConvertBack(object value, Type t, object parameter, CultureInfo culture)
  34. {
  35. return value.Equals(false) ? DependencyProperty.UnsetValue : parameter;
  36. }
  37. }
  38. }