CheckPortStateConverter.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using Aitex.Core.RT.Device.Unit;
  2. using DocumentFormat.OpenXml.Drawing.Diagrams;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Globalization;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Data;
  10. namespace MECF.Framework.UI.Client.Ctrlib.Converter
  11. {
  12. public class CheckPortStateConverter : IValueConverter
  13. {
  14. LPTransferState recodState;
  15. bool recod = false;
  16. public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
  17. {
  18. if (string.IsNullOrEmpty(value.ToString()))
  19. {
  20. recod = true;
  21. return true;
  22. }
  23. if (value.ToString() == LPTransferState.IN_SERVICE.ToString())
  24. {
  25. recod = true;
  26. recodState = LPTransferState.IN_SERVICE;
  27. return true;
  28. }
  29. else if (value.ToString() == LPTransferState.OUT_OF_SERVICE.ToString())
  30. {
  31. recod = false;
  32. recodState = LPTransferState.OUT_OF_SERVICE;
  33. return false;
  34. }
  35. else
  36. {
  37. recod = true;
  38. recodState = (LPTransferState)Enum.Parse(typeof(LPTransferState), value.ToString());
  39. return recod;
  40. }
  41. }
  42. public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
  43. {
  44. if ((bool)value)
  45. {
  46. return LPTransferState.IN_SERVICE.ToString();
  47. }
  48. else
  49. {
  50. return LPTransferState.OUT_OF_SERVICE.ToString();
  51. }
  52. }
  53. }
  54. }