码迷,mamicode.com
首页 > Windows程序 > 详细

如何在WPF控件上应用简单的褪色透明效果?

时间:2019-05-01 13:25:34      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:sof   pad   nfx   ica   tco   width   name   table   city   

原文 https://dailydotnettips.com/how-to-create-simple-faded-transparent-controls-in-wpf/

使用OpacityMask属性,我们可以使元素的特定区域透明或部分透明。在这个技巧中,我将向您展示如何在WPF中的某些元素上应用褪色透明效果。

 

我们可以使用OpacityMask与两个SolidColorBrushGradientColorBrush但是如果你想达到与褪色鉴于透明效果,你必须使用OpacityMaskLinearGradientBrush甚至可以使用RadialGradientBrush

让我们从GradientColorBrush开始,我已经应用了一个渐变效果,它从固体颜色移动到透明颜色,适用于TextBox控件。

技术图片

因此,上面的代码块设置TextBox控件OpacityMaskLinerGradientBrush其中渐变从黑色开始到透明。

类似地,您也可以应用其他元素,比如下面的Button控件

技术图片

在运行中,我们将得到以下输出。

技术图片

那么,现在你可以尝试RadialGradientBrush更多的乐趣

在完整的XAML代码块下面

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
三十
31
<Window x:Class="WpfApplication3.MainWindow"
Title="MainWindow" Height="350" Width="525" Background="AliceBlue">
<Grid>
<Image Name="image1" Stretch="Fill"  Margin="12" Source="/WpfApplication3;component/Images/Backgrounds_25962.jpg" />   
<Button
Content="Click Me !"
Height="42"
HorizontalAlignment="Left"
Margin="152,213,0,0"
Name="TransBurron"
VerticalAlignment="Top"
Width="234" >
<Button.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,0">
<GradientStop Offset="0.3" Color="Black"></GradientStop>
<GradientStop Offset="1" Color="Transparent"></GradientStop>
</LinearGradientBrush>
</Button.OpacityMask>
</Button>
<TextBox Height="30" Margin="83,74,59,207">
<TextBox.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,0">
<GradientStop Offset="0" Color="Black"></GradientStop>
<GradientStop Offset="1" Color="Transparent"></GradientStop>
</LinearGradientBrush>
</TextBox.OpacityMask>
</TextBox>
</Grid>
</Window>

希望这会有所帮助。

干杯!

AJ。

如何在WPF控件上应用简单的褪色透明效果?

标签:sof   pad   nfx   ica   tco   width   name   table   city   

原文地址:https://www.cnblogs.com/lonelyxmas/p/10799546.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!