如何将菜单项的背景不透明度设置为0.0,但仍然以1.0不透明度显示其文本?MenuItem背景不透明,但不是它的文本?
1
A
回答
3
要做到这一点,你需要将背景色设置为没有alpha通道的背景色(前两个数字在十六进制颜色0x00000000)。这将使背景颜色完全透明。然后,您的文本只需要为Alpha通道使用0xFF的任何颜色(默认值)。
+0
你可以给一些伪代码吗? – Seva
2
看到这个问题:WPF Transparent menu
你需要覆盖菜单项模板。复制/粘贴到您的Window.Resources
或Menu.Resources
<ControlTemplate x:Key="{x:Static MenuItem.TopLevelHeaderTemplateKey}" TargetType="{x:Type MenuItem}">
<Border Name="Border" >
<Grid>
<ContentPresenter
Margin="6,3,6,3"
ContentSource="Header"
RecognizesAccessKey="True" />
<Popup
Name="Popup"
Placement="Bottom"
IsOpen="{TemplateBinding IsSubmenuOpen}"
AllowsTransparency="True"
Focusable="False"
PopupAnimation="Fade">
<Border
Name="SubmenuBorder"
SnapsToDevicePixels="True"
Background="Transparent">
<StackPanel
IsItemsHost="True"
KeyboardNavigation.DirectionalNavigation="Cycle" />
</Border>
</Popup>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSuspendingPopupAnimation" Value="true">
<Setter TargetName="Popup" Property="PopupAnimation" Value="None"/>
</Trigger>
<Trigger Property="IsHighlighted" Value="true">
<Setter TargetName="Border" Property="Background" Value="#C0C0C0"/>
<Setter TargetName="Border" Property="BorderBrush" Value="Transparent"/>
</Trigger>
<Trigger SourceName="Popup" Property="Popup.AllowsTransparency" Value="True">
<Setter TargetName="SubmenuBorder" Property="CornerRadius" Value="0,0,4,4"/>
<Setter TargetName="SubmenuBorder" Property="Padding" Value="0,0,0,3"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="#888888"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
相关问题
- 1. 不透明的背景,但没有不透明度文本
- 2. HTML/CSS文本背景透明但文本不是
- 3. QWidget透明背景(但不是儿童)
- 4. 半透明的背景颜色,但不是文本
- 5. 使背景透明,但不是文本框等
- 6. 使文本字段背景透明,但占位符文本不透明
- 7. Pyglet文本背景不透明
- 8. 背景不透明
- 9. 使单元格的背景透明,不使文本透明
- 10. 样式表具有带不透明文本的透明背景?
- 11. IE8:半透明的背景颜色,但不透明的背景图像
- 12. 背景图像,但与不透明css
- 13. 使段落背景透明而不透明文本
- 14. 引导模式透明背景不透明文本
- 15. CSS:不透明只有背景,而不是内部文本
- 16. 如何设置半透明背景,但不是前景的WP8?
- 17. 创建一个透明背景,但保留文本和图标不透明
- 18. 透明背景颜色,但在IE 6和7中不透明文本
- 19. 不透明度仅在IMG而不是它的背景
- 20. 如何设置字体背景,不透明度,但不是文本里面
- 21. 透明背景,不透明元素
- 22. Bootstrap contactForm背景不透明
- 23. 不显示透明背景?
- 24. Div背景不透明?
- 25. UIButton背景将不透明
- 26. 防止透明背景与不透明背景重叠
- 27. 不透明的标题背景背后的文本
- 28. 如何使textview的图像背景半透明但不是文本?
- 29. 在CSS中使用不透明度时如何使背景透明但不是文本?
- 30. 设置菜单背景是不透明
这http://stackoverflow.com/questions/1673132/wpf-contextmenu-design-how-to-set-background-in-wpf-menuitem –
哦,是啊,那工作:D – Seva