在 Avalnia 中的 Window 对象有一个名为 ExtendClientAreaChromeHints
的属性。设置该属性为 NoChrome
且 ExtendClientAreaToDecorationsHint
为 True
之后,包含最大化、最小化按钮在内的系统标题栏就消失了。
另一个取消掉标题栏的方式是:设置窗体的 SystemDecorations
为 None
。
因为少了标题栏,所以就需要额外的代码实现拖动功能。
private void Element_OnPointerPressed(object? sender, PointerPressedEventArgs e)
{
if (e.Pointer.Type == PointerType.Mouse) this.BeginMoveDrag(e);
}
只需要将任意元素的 PointerPressed 事件增加以上事件处理器即可在该元素上实现无边框拖动。
如果代码没有效果,可以先尝试设置一下元素的背景色为红色后再尝试。