第一种方式:利用WPF的thumb控件
<Canvas Name="canvas2" >
<Canvas Background="Yellow" Canvas.Left="40" Canvas.Top="20" Width="100" Name="canvas1" Height="54" >
<Thumb Name="thumb" Height="20" DragDelta="Thumb_DragDelta" Foreground="{x:Null}" ClipToBounds="False" BorderThickness="5,2,5,0" Width="55" Canvas.Left="24" Canvas.Top="6" Background="GreenYellow"></Thumb>
</Canvas>
<Canvas Name="aaa" Background="Yellow" Canvas.Left="192" Canvas.Top="20" Width="100" Height="100" >
<Rectangle Height="94" Width="94" Canvas.Left="6" Canvas.Top="6" Fill="Black"></Rectangle>
<Thumb Name="thumb2" Height="20" Width="50" Background="Aqua" ClipToBounds="False" Canvas.Left="23" Canvas.Top="6" DragDelta="thumb2_DragDelta"></Thumb>
</Canvas>
</Canvas>
后台代码
private void Thumb_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e)
{
Canvas.SetLeft(canvas1, Canvas.GetLeft(canvas1) + e.HorizontalChange);
Canvas.SetTop(canvas1