在 WPF 应用程序中使用 MediaElement 控件重复 gif 文件动画

问题描述 投票:0回答:2

我想使用 MediaElement 控件在 WPF 应用程序中重复播放 GIF (.gif) 文件。 下面我附上了我当前使用的代码。

<MediaElement x:Name="recImageMedia"  Height="67" Margin="43,-70,816.2,0" LoadedBehavior="Play" Source="file://C:\Users\documents\visual studio 2013\Projects\Application\TempApplication\Snapshots\recordanim.gif" Visibility="Visible" />
c# wpf xaml visual-studio-2013 mediaelement
2个回答
0
投票

StackOverflow 针对您的问题建议至少两种可能的解决方案。第一种是使用此处引用的 MediaTimeline 控件

MediaTimeline SO 答案

或者,您可能会发现利用 WPF MediaKit 中的 MediaElement 会有一些用处

WPF MediaKit SO 答案


0
投票

这里有一个解决方案

<StackPanel>

    <!--1. Display GIF without animation-->
    <Image Source="loading.gif" Width="100" Height="100"/>
    
    <!--2. Display GIF and play once-->
    <MediaElement Name="me2" Source="loading.gif" 
     UnloadedBehavior="Close" Width="100" Height="100"/>
    
     <!--3. Display GIF and loop playback, always repeat-->
    <MediaElement Name="me3" Source="loading.gif" 
     ediaEnded="me_MediaEnded" 
     UnloadedBehavior="Manual" Width="100" Height="100"/>

</StackPanel>


public partial class WindowSplash : Window
{
    public WindowSplash()
    {
        InitializeComponent();
    }

    private void me_MediaEnded(object sender, RoutedEventArgs e)
    {
        me3.Position = new TimeSpan(0, 0, 1);
        me3.Play();
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.