WPF 实现波浪浮动效果

2021-07-09 16:05

阅读:418

目标:实现界面图标Load时,整体图标出现上下波浪浮动效果,如下图:

技术分享图片

前台代码:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero" mc:Ignorable="d"
x:Class="目录波浪效果.MainWindow"
x:Name="Window"
Title="MainWindow"
Width="640" Height="480" Loaded="Window_Loaded" Background="#FF97B7DE">

? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ?

? ? ? ? ? ?

? ? ? ?

? ?













? ? ? ? RenderTransformOrigin="0.5,0.5">
? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ?

? ? ? ? ? ?

? ? ? ?

? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?

? ? ? ? ? ?

? ? ? ?

? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?

? ? ? ? ? ?

? ? ? ?

? ? ? ?
? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?

? ? ? ? ? ?

? ? ? ?

? ?



后台代码:

private void Window_Loaded(object sender, RoutedEventArgs e)
? ? ? ? {
? ? ? ? ? ? int t = 0;
? ? ? ? ? ? foreach (FrameworkElement element in this.LayoutRoot.Children)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? t++;
? ? ? ? ? ? ? ? Storyboard storyboard = this.FindResource("Storyboard2") as Storyboard;
? ? ? ? ? ? ? ? DoubleAnimationUsingKeyFrames frames = storyboard.Children[0] as DoubleAnimationUsingKeyFrames;
? ? ? ? ? ? ? ? EasingDoubleKeyFrame eas = frames.KeyFrames[0] as EasingDoubleKeyFrame;
? ? ? ? ? ? ? ? eas.KeyTime = KeyTime.FromTimeSpan(TimeSpan.FromMilliseconds(2000 + t * 200));
? ? ? ? ? ? ? ? Storyboard.SetTargetName(frames, element.Name);
? ? ? ? ? ? ? ? storyboard.Begin();
? ? ? ? ? ? }
? ? ? ? }


评论


亲,登录后才可以留言!