WPF顯示GIF圖的幾種方式


使用MediaElement

  這種方式有一個局限就是圖片路徑必須是絕對路徑

<MediaElement Source="file://C:\129.gif" />
並且你還需要設置讓他循環播放
<MediaElement Source="file://C:\129.gif" MediaEnded="MediaElement_MediaEnded"/>
 private void MediaElement_MediaEnded(object sender, RoutedEventArgs e)
  {
      ((MediaElement)sender).Position=((MediaElement)sender).Position.Add(TimeSpan.FromMilliseconds(1));
  }

通過winform中的PictureBox控件

這種方式可以指定相對路徑;首先,你需要在wpf程序中添加window的程序集引用:System.Drawing.dll、System.Windows.Forms.dll和WindowsFormsIntegration.dll

引用類型后,你就可以在XAML代碼中使用winform中的PictureBox了

xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
  xmlns:winForms="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
<wfi:WindowsFormsHost>
      <winForms:PictureBox x:Name="PictureOfGif"></winForms:PictureBox>
  </wfi:WindowsFormsHost>
在程序load事件中綁定圖片
 void MainWindow_Loaded(object sender, RoutedEventArgs e)
    {
        this.PictureOfGif.Image = System.Drawing.Image.FromFile("images/129.gif");
    }

WpfAnimatedGif

  可以通過控制台或者Nuget安裝

  Install-Package WpfAnimatedGif

xmlns:gif="http://wpfanimatedgif.codeplex.com"
<Image gif:ImageBehavior.AnimatedSource="Images/animated.gif" />
GitHub地址:https://github.com/XamlAnimatedGif/WpfAnimatedGif


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM