我们有一个窗口,我们将WindowChrome GlassFrameThickness设置为负值,以便我们在整个窗口上扩展玻璃框架。
这样,SystemParameters.WindowCaptionButtonHeight值在我实际期望的范围为~36时返回22。我已经提供了一些图片,显示当前和预期的行为应该是什么。
目前我正在通过使用WindowCaptionButtonWidth而不是height来解决此问题,因为它返回了更多的预期值,但这只是感觉不对。
答案 0 :(得分:0)
在DWM下,这些系统参数不再提供正确的值。你仍然可以通过总结SystemParameters.CaptionHeight,SystemParameters.WindowResizeBorderThickness.Left(或Top以外的任何东西)和SystemParameters.WindowNonClientFrameThickness.Left(或Top以外的任何东西)来计算高度。
然而,在Windows 10等Per-Monitor DPI环境下,事情变得相当复杂。如果没有System DPI和Per-Monitor DPI的正确修改,这些系统参数将变得无用。因此,如果您希望完全重新设计窗口,标题高度将是Per-Monitor DPI总体注意事项的一部分。