在数据输入表单(Silverlight 3)中,我有一个组合框,当用户更改另一个时,可以更改其选择 - 假设根据国家/地区选择重新填充状态列表。
我想用一个简单的发光光环效果突出显示这个组合框的变化 - 基本上是一个渐渐消失的边框。我只是使用控件后面的Storyboard和Rectangle创建了这个,但我确信必须有更好的方法 - 理想情况下可重用。
这就是我所拥有的:
<Rectangle x:Name="canvas" Height="24" Margin="98,58,79,0"
VerticalAlignment="Top" Width="169" Fill="#763DE4E4"
Canvas.ZIndex="1" Opacity="0" RadiusX="5" RadiusY="5"/>
<controls:ChildWindow.Resources>
<Storyboard x:Name="HighlightControl">
<DoubleAnimation BeginTime="00:00:00" Storyboard.TargetName="canvas"
Storyboard.TargetProperty="(UIElement.Opacity)" From="0" To="1"
AutoReverse="True" Duration="0:0:1" />
</Storyboard>
</controls:ChildWindow.Resources>
要在多个控件上使用此效果,我目前必须重新定位矩形并重置Storyboard,或维护一大堆矩形并重新定位Storyboard。
我考虑使用边框控件并将其添加到控件中,但这会导致组合移动以适应边框 - 它需要保持静止,光环周围会发光。
更新:模糊效果似乎可以做可见效果位,这很好 - 这比并排矩形更好,所以我只是错过了可重复使用的效果+动画位。我想知道这是行为的用途吗?
答案 0 :(得分:1)
您是否尝试过使用这种颜色鲜艳的阴影?
<ComboBox x:Name="comboBox" Margin="248,47,272,0" VerticalAlignment="Top">
<ComboBox.Effect>
<DropShadowEffect BlurRadius="100" ShadowDepth="0" Color="White"/>
</ComboBox.Effect>
</ComboBox>
然后用故事板或视觉状态制作阴影动画?