RecipeLayoutSelectorConverter.cs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using Aitex.Sorter.Common;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Globalization;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. using System.Windows.Data;
  9. namespace Aitex.Sorter.UI.Converter
  10. {
  11. public class RecipeLayoutSelectorConverter : IValueConverter
  12. {
  13. public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
  14. {
  15. if (value != null)
  16. {
  17. var type = (SorterRecipeType)value;
  18. switch (type)
  19. {
  20. case SorterRecipeType.Transfer1To1:
  21. return Transfer1To1Layout;
  22. case SorterRecipeType.TransferNTo1:
  23. return TransferNTo1Layout;
  24. case SorterRecipeType.TransferNToN:
  25. return TransferNToNLayout;
  26. case SorterRecipeType.Pack:
  27. return PackLayout;
  28. case SorterRecipeType.Order:
  29. return OrderLayout;
  30. case SorterRecipeType.Align:
  31. return AlignLayout;
  32. case SorterRecipeType.ReadWaferId:
  33. return ReadWaferIdLayout;
  34. case SorterRecipeType.HostNToN:
  35. return HostNToNLayout;
  36. default:
  37. break;
  38. }
  39. }
  40. return null;
  41. }
  42. public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
  43. {
  44. throw new NotImplementedException();
  45. }
  46. public object Transfer1To1Layout { get; set; }
  47. public object TransferNTo1Layout { get; set; }
  48. public object TransferNToNLayout { get; set; }
  49. public object PackLayout { get; set; }
  50. public object OrderLayout { get; set; }
  51. public object AlignLayout { get; set; }
  52. public object ReadWaferIdLayout { get; set; }
  53. public object HostNToNLayout { get; set; }
  54. }
  55. }