WPF MenuItem出现多余右侧白边问题排查
解决方案
右侧白边并非来自自定义的MenuItem模板,而是Menu控件默认样式自带的内部留白。默认情况下Menu控件存在内置Padding或布局容器,导致即使MenuItem清除了边框,仍会露出空白区域。
最快的修复方式是修改Menu的属性:
- 添加
Padding="0"清除Menu内部留白 - 设置
BorderThickness="0"去掉Menu自身边框 - 设置
Background="#363435",与顶部背景色保持一致,避免露出下层浅色背景
修改后的Menu代码片段:
<Menu VerticalAlignment="Center" HorizontalAlignment="Center" Padding="0" BorderThickness="0" Background="#363435"> <MenuItem Style="{StaticResource Main_MenuItem}" Header="Hello" /> </Menu>
如果需要彻底定制Menu外观,也可以为Menu编写自定义ControlTemplate,但上述方式已能快速解决当前问题。
内容的提问来源于stack exchange,提问作者esdeath
相关产品推荐
相关产品推荐

