WaferPro.xaml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <UserControl x:Class="Aitex.Sorter.UI.Controls.WaferPro"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:Aitex.Sorter.UI.Controls"
  7. xmlns:converter="clr-namespace:Aitex.Sorter.UI.Converter"
  8. xmlns:ctrl="clr-namespace:Aitex.Sorter.UI.Controls"
  9. mc:Ignorable="d"
  10. d:DesignHeight="450" d:DesignWidth="800">
  11. <Grid x:Name="root" PreviewMouseRightButtonUp="PreviewMouseRightButtonUp">
  12. <Grid.ContextMenu>
  13. <ContextMenu Visibility="{Binding ShowSlot, Converter={StaticResource boolVisibilityConverter} }">
  14. <MenuItem Header="Create Wafer" Command="{Binding CreateDeleteWaferCommand}" CommandParameter="CreatWafer" />
  15. <MenuItem Header="Delete Wafer" Command="{Binding CreateDeleteWaferCommand}" CommandParameter="DeleteWafer" />
  16. </ContextMenu>
  17. </Grid.ContextMenu>
  18. <Border Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}" Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}" Background="Transparent" Visibility="{Binding WaferStyle, Converter={StaticResource visibilityConverter}}" MouseMove="Wafer_MouseMove" Drop="Wafer_Drop">
  19. <Border.AllowDrop>
  20. <MultiBinding Converter="{StaticResource waferdropConverter2}">
  21. <Binding Path="WaferItem.Status" />
  22. <Binding Path="WaferItem.IsDestination" />
  23. <Binding Path="ShowSlot" />
  24. </MultiBinding>
  25. </Border.AllowDrop>
  26. <Border.ToolTip>
  27. <TextBlock>
  28. <TextBlock.Text>
  29. <MultiBinding Converter="{StaticResource waferConverter}">
  30. <Binding Path="WaferItem.Status" />
  31. <Binding Path="WaferIDDisplayMode" />
  32. <Binding Path="WaferItem.WaferOrigin" />
  33. <Binding Path="WaferItem.LaserMarker" />
  34. <Binding Path="WaferItem.T7Code" />
  35. </MultiBinding>
  36. </TextBlock.Text>
  37. </TextBlock>
  38. </Border.ToolTip>
  39. <Ellipse Visibility="{Binding WaferItem.Status , Converter={StaticResource waferVisibilityConverter}}" Stretch="Fill" StrokeThickness="2" StrokeLineJoin="Round" Stroke="#FF00641D" Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}" Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}">
  40. <Ellipse.Fill>
  41. <MultiBinding Converter="{StaticResource waferColorConverter}">
  42. <Binding Path="WaferItem.Status" />
  43. <Binding Path="WaferItem.ProcessState" />
  44. <Binding Path="WaferItem.IsDestination" />
  45. <Binding Path="WaferItem.IsSource" />
  46. <Binding Path="WaferItem.SubstE90Status" />
  47. <Binding Path="WaferItem.IsChecked" />
  48. </MultiBinding>
  49. </Ellipse.Fill>
  50. </Ellipse>
  51. </Border>
  52. <Border Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}" BorderThickness="0" BorderBrush="CadetBlue" Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualHeight}" Background="Transparent" Visibility="{Binding WaferStyle, Converter={StaticResource visibilityConverter}, ConverterParameter=0 }" MouseMove="Wafer_MouseMove" Drop="Wafer_Drop" DragOver="Border_DragOver" DragLeave="Border_DragLeave">
  53. <Border.ToolTip>
  54. <ToolTip Content="{Binding Slot, Converter={StaticResource slotToIndexConverter}}" Visibility="{Binding ShowSlot, Converter={StaticResource boolVisibilityConverter} }" />
  55. </Border.ToolTip>
  56. <Border.AllowDrop>
  57. <MultiBinding Converter="{StaticResource waferdropConverter2}">
  58. <Binding Path="WaferItem.Status" />
  59. <Binding Path="WaferItem.IsDestination" />
  60. <Binding Path="ShowSlot" />
  61. </MultiBinding>
  62. </Border.AllowDrop>
  63. <Grid Visibility="{Binding ShowSlot, Converter={StaticResource boolVisibilityConverter} }">
  64. <ctrl:Slot VerticalAlignment="Center" HorizontalAlignment="Center" Margin="-158,0,0,0" Visibility="{Binding ShowSlot, Converter={StaticResource boolVisibilityConverter}}" />
  65. <Rectangle Visibility="{Binding WaferItem.Status , Converter={StaticResource waferVisibilityConverter}}" x:Name="green" Width="146" Height="14" Canvas.Left="16" Stretch="Fill" StrokeThickness="2" StrokeLineJoin="Round" Stroke="{Binding WaferItem.Status, Converter={StaticResource waferStatusConverter}}">
  66. <Rectangle.Style>
  67. <Style TargetType="Rectangle">
  68. <Style.Triggers>
  69. <Trigger Property="IsMouseOver" Value="True">
  70. <Setter Property="StrokeThickness" Value="4" />
  71. </Trigger>
  72. </Style.Triggers>
  73. </Style>
  74. </Rectangle.Style>
  75. <Rectangle.Fill>
  76. <MultiBinding Converter="{StaticResource waferColorConverter}">
  77. <Binding Path="WaferItem.Status" />
  78. <Binding Path="WaferItem.ProcessState" />
  79. <Binding Path="WaferItem.IsDestination" />
  80. <Binding Path="WaferItem.IsSource" />
  81. <Binding Path="WaferItem.SubstE90Status" />
  82. <Binding Path="WaferItem.IsChecked" />
  83. </MultiBinding>
  84. </Rectangle.Fill>
  85. </Rectangle>
  86. <TextBlock FontSize="7" Foreground="{Binding WaferItem, Converter={StaticResource waferLabelColorConverter}}">
  87. <TextBlock.Text>
  88. <MultiBinding Converter="{StaticResource waferConverter}">
  89. <Binding Path="WaferItem.Status" />
  90. <Binding Path="WaferIDDisplayMode" />
  91. <Binding Path="WaferItem.WaferOrigin" />
  92. <Binding Path="WaferItem.LaserMarker" />
  93. <Binding Path="WaferItem.T7Code" />
  94. </MultiBinding>
  95. </TextBlock.Text>
  96. </TextBlock>
  97. <TextBlock FontSize="12" Visibility="{Binding ShowSlotIndex}" Text="{Binding Slot, Converter={StaticResource slotToIndexConverter}}"/>
  98. </Grid>
  99. </Border>
  100. </Grid>
  101. </UserControl>