在我的 WPF 应用程序中,我希望有一个类似于Media Center的背景的环境动画背景。是否有提供此功能的免费控件?
问问题
16404 次
5 回答
9
背景动画的一种方法是:
也可以将 TargetProperty 设置为“(Background).(SolidColorBrush.Color)”,如下例所示:
<ColorAnimation
Storyboard.TargetName = "lblSubGroup"
Storyboard.TargetProperty = "(Background).(SolidColorBrush.Color)"
From = "White"
To = "Navy"
Duration = "0:0:3"
AutoReverse = "True"/>
于 2011-11-21T17:12:39.800 回答
8
我更喜欢通过情节提要为边框的背景设置动画。这很容易,您可以根据需要构建复杂的动画。这是一个简短的例子:
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.Triggers>
<EventTrigger RoutedEvent="Window.Loaded">
<BeginStoryboard>
<Storyboard AutoReverse="True" BeginTime="0" >
<DoubleAnimation Storyboard.TargetName="Foo"
Storyboard.TargetProperty="Offset"
From="0.2" To="0.8" Duration="0:0:10"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Window.Triggers>
<Border>
<Border.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="Yellow" Offset="0"/>
<GradientStop Color="Orange" Offset="0.2" x:Name="Foo"/>
<GradientStop Color="Red" Offset="1"/>
</LinearGradientBrush>
</Border.Background>
<!-- put your windowcontent(grid etc.) here -->
</Border>
</Window>
您还应该查看 MSDN 文章Animation Overview。
于 2009-09-03T12:06:06.080 回答
1
您可以使用 Grid 并将视频元素放在最后一个 z 顺序中,并使其宽度和高度为自动,您可以在其中播放视频并将容器放在它前面。
在网格中,您可以按指定的 z 顺序放置对象,您可以创建自定义动画控件并让它作为添加到网格中的第一个控件运行。
目前没有提供任何动画的背景属性,它们只能加载图片。
于 2009-08-29T07:58:37.217 回答
1
如果可能的话,我会尝试使用矢量动画,播放视频(必须自动缩放)不是最佳的(在处理、图像缩放等方面)。
在我看来,使用矢量形状/画笔(甚至是 3D?)会好得多。
于 2009-09-03T11:38:59.670 回答
-15
谷歌“背景动画”。您将获得 18,500,000 次点击。
于 2009-09-03T11:35:45.433 回答