DateTimeConvert.cs 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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 FWindSoft.Wpf
  9. {
  10. public class DateTimeConverter : IValueConverter
  11. {
  12. public static readonly DateTimeConverter Date = new DateTimeConverter();
  13. public static readonly DateTimeConverter DateTime = new DateTimeConverter() { DataTimeFormat= "yyyyMMddhhmmss" };
  14. public DateTimeConverter()
  15. {
  16. DataTimeFormat = "yyyyMMdd";
  17. }
  18. public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
  19. {
  20. DateTime dateTime = System.DateTime.Now;
  21. if (value == null)
  22. return null;
  23. if (System.DateTime.TryParseExact(value.ToString(), "yyyyMMdd", CultureInfo.CurrentCulture,
  24. DateTimeStyles.AssumeLocal, out dateTime))
  25. {
  26. return dateTime;
  27. }
  28. return null;
  29. }
  30. public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
  31. {
  32. try
  33. {
  34. DateTime dateTime = (DateTime)value;
  35. return dateTime.ToString("yyyyMMdd");
  36. }
  37. catch (Exception)
  38. {
  39. }
  40. return string.Empty;
  41. }
  42. public string DataTimeFormat { get; set; }
  43. }
  44. }