title: Handle drag shape that be overlap
body: <p>i 'm doing  a program that user could drag this shape.
  The shape is:
  <a href="https://i.stack.imgur.com/uyxFr.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/uyxFr.png" alt="IF shape"></a>
  <a href="https://i.stack.imgur.com/j1eqa.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/j1eqa.png" alt="Action Shape"></a></p>
  
  <p>It could be joined each other for making new block. 
  But the problem is, when i drag two [Blue] Shape into the [If] Shape, i cant not drag the [Blue] anymore, cause of the [If] Shape is collapsed and make the [Blue] Shape cant not be interact.
  <a href="https://i.stack.imgur.com/zd0tU.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/zd0tU.png" alt="enter image description here"></a></p>
  
  <p>Here is my code:<br>
  The define of the shape</p>
  
  <pre><code>&lt;UserControl x:Class="SampleCode.ActionShape"
               xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
               xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
               xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
               xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
               xmlns:local="clr-namespace:SampleCode"
               xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
               mc:Ignorable="d" &gt;
      &lt;UserControl.Resources&gt;
          &lt;local:ColorToBrushConverter x:Key="colorToBrushConverter"/&gt;
          &lt;local:ThicknessConverter x:Key="thicknessConverter"/&gt;
      &lt;/UserControl.Resources&gt;
      &lt;Grid&gt;
          &lt;Path Data="{Binding SvgData}"
                Fill="{Binding Color, Converter={StaticResource colorToBrushConverter}}"
                Cursor="Hand"&gt;
          &lt;/Path&gt;
          &lt;TextBlock Foreground="{Binding TextColor, Converter={StaticResource colorToBrushConverter}}" FontSize="{Binding FontSize}" Margin="{Binding MarginText}" Text="{Binding Text}"&gt;&lt;/TextBlock&gt;
      &lt;/Grid&gt;
  &lt;/UserControl&gt;
  </code></pre>
  
  <p>The mainwindow.xaml</p>
  
  <pre><code>&lt;Window x:Class="SampleCode.MainWindow"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="clr-namespace:SampleCode"
      Title="" 
      Width="1400"
      Height="800"
      Loaded="Window_Loaded"&gt;
      &lt;Window.Resources&gt;
          &lt;local:ColorToBrushConverter x:Key="ColorToBrushConverter"/&gt;
          &lt;DataTemplate DataType="{x:Type local:BaseShapeMVVm}"&gt;
              &lt;local:ActionShape AllowDrop="True" MouseDown="Rectangle_MouseDown" MouseMove="Rectangle_MouseMove" MouseUp="Rectangle_MouseUp"&gt;&lt;/local:ActionShape&gt;
          &lt;/DataTemplate&gt;
      &lt;/Window.Resources&gt;
      &lt;Window.DataContext&gt;
          &lt;local:ViewModel /&gt;
      &lt;/Window.DataContext&gt;
      &lt;Grid&gt;
          &lt;TreeView  Name="ListBox" ItemsSource="{Binding Rectangles}"&gt;
              &lt;ItemsControl.ItemsPanel&gt;
                  &lt;ItemsPanelTemplate&gt;
                      &lt;Canvas /&gt;
                  &lt;/ItemsPanelTemplate&gt;
              &lt;/ItemsControl.ItemsPanel&gt;
              &lt;ItemsControl.ItemContainerStyle&gt;
                  &lt;Style TargetType="TreeViewItem"&gt;
                      &lt;Setter
                          Property="Canvas.Left" Value="{Binding X}"/&gt;
                      &lt;Setter
                          Property="Canvas.Top" Value="{Binding Y}"/&gt;
                  &lt;/Style&gt;
              &lt;/ItemsControl.ItemContainerStyle&gt;
          &lt;/TreeView&gt;
      &lt;/Grid&gt;
  &lt;/Window&gt;
  </code></pre>
  
  <p>could you give me some recommendation for this problem? i 'm very appoxiated</p>