WPF 控件的阴影效果
前言
简单实现控件的阴影效果,效果较少,开发过程中使用到了该功能,简单记录一下,
实现功能的控件就是 DropShadowEffect
代码
<Border Margin="50" CornerRadius="40">
<Border.Effect>
<DropShadowEffect x:Name="ServiceButtonBorder" Color="Black" ShadowDepth="15" BlurRadius="1" Opacity="1" Direction="290" />
</Border.Effect>
<Grid>
<Button Content="按钮1" FontSize="35"/>
</Grid>
</Border>
其中最重要的就是 DropShadowEffect 控件 而且这个阴影控件时是不可以单独存在的,需要在控件的 Effect中使用 ,在这里是写到了Border下,其实也可以直接写到Button下。
阴影控件比较常用的几个属性
- Color 设置阴影的颜色
- ShadowDepth 设置阴影的深度,看起来的效果就是阴影离控件的最远距离
- BlurRadius 设置阴影的模糊度,该属性的值越大,模糊度越高,阴影看起来比较散
- Opacity 设置阴影的透明度,范围是0-1 ,0是完全透明,1是完全不透明
- Direction是阴影的方向 数值可以输入任意值,个人建议输入范围是0-360(以控件为圆心转一圈)
0的时候,阴影在正右方,
90的时候,阴影在正上方,
180的时候,阴影在正左方,
270的时候,阴影在正下方,
实现效果
结束语
开发工程中并没有实现很复杂的功能,但是实现起来效果还可以,必要的话,可以根据需求动态显示阴影,达到鼠标选中控件时的提示效果。