我想知道如何更改WPF窗口背景的不透明度而不影响内部子控件。当我将Window属性'Opacity'更改为0.5时,我得到了一个半透明窗口,但窗口内的图像也继承了0.5不透明度值,所以我怎样才能使窗口不透明?更改背景不透明度而不更改内容不透明度
19
A
回答
30
窗口是一切的父容器,所以在窗口上设置不透明度将影响它包含的所有内容。我认为你想要做的是改变Window.Background
的Opacity
。
启用一个窗口来实现透明度涉及到一些要添加的内容。首先,您需要设置Window.AllowsTransparency = True
并设置Window.WindowStyle = None
。 WindowStyle.None
创建一个没有窗口镶边的最小化,最大化和关闭按钮的窗口,所以你必须在应用程序中自己处理它,并调整窗口大小和移动窗口。完成之后,您可以将Window.Background
设置为具有设置为Opacity
的画笔。
以下代码示例将告诉您如何使窗口始终透明,并将窗口背景的不透明度设置为具有不同的不透明度。
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="WpfApplication1.MainWindow"
x:Name="Window"
WindowStyle="None"
AllowsTransparency="True">
<Window.Background>
<SolidColorBrush Color="White" Opacity="0.5"/>
</Window.Background>
<Grid>
<!--Window Content-->
</Grid>
</Window>
如果您只希望窗口中的元素可见,您可以随时将窗口背景设置为透明。
+0
我正在使用样式模板。为了让它适应属性设置器,我将背景色的alpha设置为所需的不透明度级别,并将背景RGB代码复制到背景设置器。 :)完美的作品! – C4u
相关问题
- 1. VB.NET:更改背景不透明度
- 2. 更改不透明度时重绘窗口不透明度
- 3. 在页面宽度上更改背景图像不透明度
- 4. 改变Blogger的背景透明度图片不是透明
- 5. 不透明度使div更不透明
- 6. 段落中的不透明度变化改变了文本的不透明度和背景不透明度
- 7. 更改jButton透明度/不透明度/ alpha
- 8. 更改背景图片的不透明度,但不更改背景图片的内容
- 9. 如何在动画不透明度时阻止IE更改透明背景?
- 10. 如何更改窗体窗口的不透明度而不更改文本的不透明度
- 11. Javascript - 用时间间隔更改背景颜色不透明度
- 12. 如何在CSS中更改背景颜色的不透明度
- 13. 使用jQuery更改背景不透明度
- 14. 更改背景不透明度保留文字
- 15. 更改背景图像的不透明度
- 16. 如何更改背景图片的不透明度?
- 17. WPF AreaSeries:如何更改背景不透明度?
- 18. Matplotlib - 更改用作背景的图像的不透明度
- 19. D3.js更改背景不透明度与转换
- 20. 使用jquery连续div背景不透明度更改
- 21. 用css更改背景图像的不透明度
- 22. 更改不透明度的子div
- 23. 更改文本的不透明度
- 24. 使用setTimeout更改不透明度
- 25. 更改页面不透明度.click jquery
- 26. 更改TreeItem的不透明度
- 27. 更改CCSpriteBatchNode中CCSprite的不透明度
- 28. 更改图片不透明度
- 29. javafx更改输入时不透明度
- 30. 使用不透明度更改图片
只是订阅你是问题,看看这是否可能,我认为这不是,但以防万一。您是否尝试将其设置为“透明”颜色并添加,例如,半透明矩形不会影响对象的其余部分? – NestorArturo