在将登录页面搭好后,我想试试能不能通过WPF强大的动画功能制作出登录面板的渐显渐隐效果,在上网查阅了相关资料后,我找到了一个能帮助我做出此效果的一个属性:UIElement.OpacityMask属性。
先来介绍一下UIElement.OpacityMask属性,它表示当前元素的不透明蒙版,该属性的值是Brush 类型,它能改变对象区域的不透明度的画笔,使元素的特定区域透明或部分透明,从而实现比较新颖的效果。值得一提的是,OpacityMask属性接受任何画刷,可利用LinearGradientBrush线性渐变画刷,通过对渐变画刷中各颜色点加以动画处理便能做出所需要的效果。
渐变浮现效果,实现步骤:(1)通过事件触发器触发Loaded(加载)事件实现,直接在页面中去定义即可。
(2)设置对象Border的OpacityMask属性:
<Border Grid.Row="1" Grid.Column="1" BorderThickness="5" CornerRadius="5" Name="CloseBorder" Opacity="0.9" Background="#f1f1f1">
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientStop Color="#00000000" Offset="0"/>
<GradientStop Color="#00000000" Offset="1"/>
<GradientStop Color="#00000000" Offset=