WPF 无边框自定义 Window 调整大小问题

WPF Borderless Custom Window Resizing Issue

我有一个带有 ResizeMode="NoResize" WindowStyle="None" 的 WPF window。我有一个自定义标题栏,它由一个网格和一个环绕整个 window 的 px 边框组成。我正在使用以下方法调整 window

的大小
HwndSource source = HwndSource.FromHwnd(new WindowInteropHelper(this).Handle);
SendMessage(source.Handle, WM_SYSCOMMAND, (IntPtr)(61440 + direction), IntPtr.Zero);

方向是

public enum SysCommandSize : int {
     SC_SIZE_HTLEFT = 1,
     SC_SIZE_HTRIGHT = 2,
     SC_SIZE_HTTOP = 3,
     SC_SIZE_HTTOPLEFT = 4,
     SC_SIZE_HTTOPRIGHT = 5,
     SC_SIZE_HTBOTTOM = 6,
     SC_SIZE_HTBOTTOMLEFT = 7,
     SC_SIZE_HTBOTTOMRIGHT = 8
}

除了通过抓住底部或顶部的任何部分使高度小于初始 window 高度来调整大小时,一切正常。发生的事情是底部边框最终消失了。

有人知道这里发生了什么吗?

谢谢

我使用 WPF Custom Chrome Library workaround for creating a window with a custom border and title bar. I was able to customize the window to the way I want. I am still working out a few kinks but everything works a lot better now. Thanks to gbahns 解决了这个问题。