WPF实现拖拽方法

本文介绍了两种在WPF中实现元素拖拽的方法。第一种利用Thumb控件,通过设置DragDelta事件来改变Canvas的位置。第二种方法通过监听MouseLeftButtonDown、MouseMove和MouseLeftButtonUp事件,动态调整元素在Canvas上的位置。这两种方式都提供了直观的用户交互体验。
摘要由CSDN通过智能技术生成

第一种方式:利用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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值