wpf 类似于360加速球,的拖动和点击功能的实现

项目需求,客户端右上角显示一个图标,可以拖动,单击时显示另一个窗口。
现在单击的功能实现了,在网上逛了一天了拖动的功能还没有实现.

在屏幕上悬浮的球也好,图标也好。本质上都是一个窗体,窗体本身就能拖动,不用单独实现。去百度搜 WPF 异形窗体,答案一堆。

为了方便你看,从其他地方直接抄来一点,可能对你有用。

如题所述,在WPF中要创建一个没有边框且为圆角的窗体,有如下几步工作要进行:
第一步:去掉窗体默认样式的边框

首先将窗体的背景设为透明,将允许透明的属性设置为True,即:Background="Transparent" AllowsTransparency="True",将Window的WindowStyle属性设置为None,即WindowStyle="None" (当AllowsTransparency="True"时,WindowStyle.None 是 WindowStyle 的唯一有效值)。
注:这几个属性必须按要求设置,否则会影响最终的效果。
第二步:设置窗体的圆角效果

这个设置就相对简单,只需在标签下通过border设置即可实现,具体的设置代码如下:

注:此时的窗体背景透明,如果要为窗体设置背景色,那么要在border标签下添加Background属性即可。

通过以上两步即可实现圆角窗口的实现^.^

附加:如果需要窗体可以随意拖动,需要为窗体添加MouseLeftButtonDown事件来实现,MouseLeftButtonDown的实现也相当的简单,如下:
public void DragWindow(object sender, MouseButtonEventArgs args) {
this.DragMove();
}

楼上说的已经很明确了,不过建议加上try和catch,今天写代码时遇到了莫名其妙的抛错问题。

 public void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs args){
 try{
 this.DragMove();
 }catch{}
 }