WPF做这样的窗口非常简单,只有需在窗口设计中设置两个属性,一个是AllowsTransparency, 设置为 Ture; 一个是 WindowStyle, 设置为 None。
另外,如果AllowsTransparency="True",那么 WindowStyle只能为 None, VS2015 已经做到连动设置,只要勾选AllowsTransparency,后一个也跟着变了。但 VS2008 还是需要用户分别设置,不然会报错。
还有一个问题不得不提,AllowsTransparency="True" 之后就无法使用 WindowsFormsHost控件了,因为就算用了,WFH里的任何控件也是透明无法显示出来的,比如ReportViewer!
要实现拖拽,通过如下实现:
private void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { try { this.DragMove(); } catch { } }