C# WPF切换视频图片动画百叶窗等特效

前台

//随机切换特效
			<Grid  Width="1080" Height="1920" >
                <Controls:TransitionElement x:Name="control"  >
                    <Controls:TransitionElement.TransitionSelector>
                        <trans:RandomTransitionSelector >
                            <transt:DiamondsTransition/>
                            <!--<transt:DoorTransition />-->
                            <transt:CheckerboardTransition  />
                            <transt:HorizontalBlindsTransition  />
                            <transt:DoubleRotateWipeTransition />
                            <transt:DotsTransition/>
                        </trans:RandomTransitionSelector>
                    </Controls:TransitionElement.TransitionSelector>
                </Controls:TransitionElement>
            </Grid>
//单独使用特效
<transc:TransitionElement x:Name="mainp" Margin="12,38,33,12">
</transc:TransitionElement>

后台:

//图片切换
Image img = new Image() { Source = new BitmapImage(new Uri("pack://application:,,,/Images/haha.jpg")) };
control.Content = img;

//视频切换
MediaElement media = new MediaElement();
media.Source = new Uri(path);//写路径
media.LoadedBehavior = MediaState.Manual;
media.Volume =1;
media.MediaEnded += new RoutedEventHandler((sender1, e1) =>
{
//设置一下视频进度,确保从头开始播放
 media.Position = TimeSpan.Zero;
 media.Play();
});
media.MediaFailed += new EventHandler<ExceptionRoutedEventArgs>((sender1, e1) =>//发生错误时
{
 media.Close();
 media.Source = null;
 });
media.Play();
control.Content = media;


//后台单独使用一种特效
Transitionals.Transitions.FlipTransition t = new Transitionals.Transitions.FlipTransition();
mainp.Transition = t;
mainp.Content =t;

你可能感兴趣的:(C#,WPF,wpf,c#,音视频)