You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

System.Windows.Window窗口出现双行黑框问题求助

问题描述

带有两行的黑框

我基于System.Windows.Window基类,用单个TextBlock和Border元素制作类提示框窗口,但在特定宽度下会出现一个带两行的黑框。试过调整布局元素、切换屏幕、修改窗口栏设置等方法,都没法去掉这个黑框,求解决办法?

可行的解决思路
  • 把窗口的ResizeMode设为NoResize或CanMinimize,避免特定尺寸下触发系统绘制异常:
    <Window ResizeMode="NoResize">
    
  • 在窗口构造函数里添加代码,强制禁用边缘渲染优化:
    this.SetValue(System.Windows.Media.RenderOptions.EdgeModeProperty, System.Windows.Media.EdgeMode.Aliased);
    
  • 调整Border的CornerRadius和Padding参数,避免和窗口边缘的像素对齐冲突:
    <Border CornerRadius="2" Padding="1">
        <TextBlock ... />
    </Border>
    
  • 如果开启了AllowsTransparency,把它设为False,透明窗口很容易出现这类系统绘制的异常线条:
    <Window AllowsTransparency="False">
    
  • 改用WindowStyle="None"自定义标题栏,完全避开系统默认边框的绘制逻辑,同时自己实现窗口拖动、关闭等基础功能。

内容的提问来源于stack exchange,提问作者user1800368

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 14:55:15