using System; using System.Globalization; using System.Windows; using System.Windows.Data; using InABox.Core; namespace PRSDesktop { public class JobDocumentSetDescriptionConverter : IValueConverter { public object Convert(object value, Type t, object parameter, CultureInfo culture) { try { if ((value == null) || String.Equals(value,"")) return ""; var description = Serialization.Deserialize(value.ToString()); if (String.Equals(parameter, "ID")) return description?.ID ?? Guid.Empty; if (String.Equals(parameter, "Code")) return description?.Code ?? ""; if (String.Equals(parameter, "Description")) return description?.Description ?? ""; if (String.Equals(parameter, "Tags")) return String.Join(", ",description?.Tags ?? new String[] { }); return parameter?.ToString() ?? ""; } catch (Exception e) { return e.Message; } } public object ConvertBack(object value, Type t, object parameter, CultureInfo culture) { return value.Equals(false) ? DependencyProperty.UnsetValue : parameter; } } }