ShyFrog

背景

当我们在用Avalonia开发项目时,我们可能会对控件添加一些阴影效果,改善用户体验,我们开发WPF的人知道,WPF会给我提供Effect这么一个属性,这是方便我们进行阴影以及特效使用,但是Avalonia要想完成同样的效果怎么办呢

解决方案

我们要使用Avalonia的控件阴影效果只能使用Border上的BoxShadow属性就可以完成阴影效果,现在我们查看到BoxShadow对应的属性是BoxShadows,我们细心的可以发现BoxShadows代表是多个BoxShadow叠加组合完成,当我们发现每个BoxShadow内部其实还有其他的属性,每个BoxShadow内部属性依次是OffsetX(X轴位移),OffsetY(Y轴位移),Blur(模糊程度),Spread(扩展范围),Color(颜色),IsInset(是否内阴影,此处在XAML上设置无效,需要代码设置)  由此可以得出我们想要的效果,如下图所示

代码为

<Border
            Height="150"
            Margin="10"
            BoxShadow="0 0 10 4 #ccc" />
View Code

 

 有兴趣关注我的Avalonia开源项目: https://github.com/Coolkeke/LayUI-Avalonia

相关文章: