RelinkControl.xaml 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <ResourceDictionary
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:c="clr-namespace:SHJX.Service.WorkFlowEdit">
  5. <ResourceDictionary.MergedDictionaries>
  6. <ResourceDictionary Source="/SHJX.Service.WorkFlowEdit;component/Themes/Shared.xaml" />
  7. </ResourceDictionary.MergedDictionaries>
  8. <Style TargetType="{x:Type c:RelinkControl}">
  9. <Setter Property="SnapsToDevicePixels" Value="True" />
  10. <Setter Property="Template">
  11. <Setter.Value>
  12. <ControlTemplate>
  13. <Grid>
  14. <Canvas x:Name="PART_RelinkDecorator" Visibility="Hidden">
  15. <c:LinkThumb
  16. Canvas.Left="{Binding StartPoint.X}"
  17. Canvas.Top="{Binding StartPoint.Y}"
  18. Width="7"
  19. Height="7"
  20. Margin="-3,-3,0,0"
  21. Cursor="Cross"
  22. Kind="Source"
  23. Template="{StaticResource ThumbRectTemplate}" />
  24. <c:LinkThumb
  25. Canvas.Left="{Binding EndPoint.X}"
  26. Canvas.Top="{Binding EndPoint.Y}"
  27. Width="7"
  28. Height="7"
  29. Margin="-3,-3,0,0"
  30. Cursor="Cross"
  31. Kind="Target"
  32. Template="{StaticResource ThumbRectTemplate}" />
  33. </Canvas>
  34. <Canvas x:Name="PART_SelectionDecorator" Visibility="Hidden">
  35. <Control
  36. Canvas.Left="{Binding StartPoint.X}"
  37. Canvas.Top="{Binding StartPoint.Y}"
  38. Width="7"
  39. Height="7"
  40. Margin="-3,-3,0,0"
  41. Template="{StaticResource ThumbRectTemplate}" />
  42. <Control
  43. Canvas.Left="{Binding EndPoint.X}"
  44. Canvas.Top="{Binding EndPoint.Y}"
  45. Width="7"
  46. Height="7"
  47. Margin="-3,-3,0,0"
  48. Template="{StaticResource ThumbRectTemplate}" />
  49. </Canvas>
  50. </Grid>
  51. <ControlTemplate.Triggers>
  52. <MultiDataTrigger>
  53. <MultiDataTrigger.Conditions>
  54. <Condition Binding="{Binding IsSelected}" Value="True" />
  55. <Condition Binding="{Binding CanRelink}" Value="True" />
  56. </MultiDataTrigger.Conditions>
  57. <Setter TargetName="PART_RelinkDecorator" Property="Visibility" Value="Visible" />
  58. </MultiDataTrigger>
  59. <MultiDataTrigger>
  60. <MultiDataTrigger.Conditions>
  61. <Condition Binding="{Binding IsSelected}" Value="True" />
  62. <Condition Binding="{Binding CanRelink}" Value="False" />
  63. </MultiDataTrigger.Conditions>
  64. <Setter TargetName="PART_SelectionDecorator" Property="Visibility" Value="Visible" />
  65. </MultiDataTrigger>
  66. </ControlTemplate.Triggers>
  67. </ControlTemplate>
  68. </Setter.Value>
  69. </Setter>
  70. </Style>
  71. </ResourceDictionary>