我已经在XAML中使用过事件触发器。就我而言,它们在用户拖拽前和用户拖拽时透明(不透明度为30%),不透明度设置为100%。然后
<EventTrigger RoutedEvent="DragDrop.DragEnter">
<BeginStoryboard Storyboard="{StaticResource FadeInStoryboard}" x:Name="FadeInStoryboard_BeginStoryboard1"/>
</EventTrigger>
<EventTrigger RoutedEvent="DragDrop.DragLeave">
<BeginStoryboard Storyboard="{StaticResource FadeOutStoryboard}" x:Name="FadeOutStoryboard_BeginStoryboard1"/>
</EventTrigger>
的故事板将动画的不透明度
<Storyboard x:Key="FadeInStoryboard">
<DoubleAnimation To="1" Duration="0:00:00.2" Storyboard.TargetName="UserControl" Storyboard.TargetProperty="(UIElement.Opacity)" />
</Storyboard>
<Storyboard x:Key="FadeOutStoryboard">
<DoubleAnimation To="0.3" Duration="0:00:00.2" Storyboard.TargetName="UserControl" Storyboard.TargetProperty="(UIElement.Opacity)" />
</Storyboard>
我从来没有意识到DragDrop.DoDragDrop是一个阻塞调用。直到发生下降(成功或否则)之后才会返回。很有用! – Darren 2015-05-22 11:18:11
圣洁的垃圾+1 .... – 2015-09-01 14:44:13