当我试图在显示器的侧面或角落对齐我的窗口时,我发现在屏幕边缘和窗口边缘之间存在某种填充.我从模板创建了新的wpf项目,在构造函数中只添加了两行并得到了这个:
为什么它不适合屏幕边缘?当我尝试将窗口放到右下角时,同样的问题:
Rect workArea = SystemParameters.WorkArea;
Left = workArea.Location.X + workArea.Width - Width;
Top = workArea.Location.Y + workArea.Height - Height;
Run Code Online (Sandbox Code Playgroud)
看起来窗口有7px边框(就像在win7上一样)但在win10上看不见.此外,我发现,如果我都设置WindowStyle于WindowStyle.None并ResizeMode以ResizeMode.NoResize正确,系统地窗口,但这不是我所需要的.在win7上,同样的程序按预期工作.
我可以将Left属性设置为-7,但它不是解决方案.我怎样才能正确设置窗口位置,以便在win7和win10上看起来都很好?
左/右/底部的可调整大小的边框现在在Windows 10上不可见,并且该边框是该间隙的位置.如果您将窗口置于屏幕中间,并将鼠标拖动到窗口的左边缘,您将看到光标更改为调整大小的光标,使其超出窗口边缘8个像素.这告诉你边框仍然存在.
您可以通过使用正常的组合得到offests GetWindowRect功能和使用的DwmGetWindowAttribute功能与一起DWMWA_EXTENDED_FRAME_BOUNDS参数.
| 归档时间: |
|
| 查看次数: |
2681 次 |
| 最近记录: |