WPF 附加属性提供某个元素拥有拖拽窗口的功能
我需要窗口内的某个元素拥有拖动整个窗口的功能,也就是这个元素在拖动的时候是拖动整个窗口。而且我还开出一个有趣的方法,这个作为窗口的拖拽的元素如果是用户在元素上拖动,那么将会拖动窗口,如果用户是点击,将会触发点击事件 附加属性可以给某个元素附加有趣的功能,本文的功能需要拖动元素的时候实际上是拖动窗口,第二个是元素是支持点击的 拖动窗口使用的是窗口的 DragMove 方法 元素支持点击用的是 WPF 给任意控件通过按下移动抬起封装点击事件 方法 因此本文需要引入 WPF 给任意控件通过按下移动抬起封装点击事件 的 InputHelper 类作为辅助 用法如下,写一个简单的界面,放一个元素作为拖动的元素 <Border x:Name="DraggingElement" Width="100" Height="100" Background="Gray"> <TextBlock x:Name="TextBlock" Margin="10,10,10,10" HorizontalAlignment="Center"></TextBlock> </Border> 上面代码的 DraggingElement 就是用来拖动窗口的元素 接下来在元素放一个 WindowDraggingExtension.DragWindow 附加属性 <Border x:Name="DraggingElement"