zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    架构设计:系统存储(1)——块存储方案(1)
    《Linux设备节点创建》用户空间ueventd创建设备节点规则
    架构设计:系统间通信(45)——阶段性问题记录
    队列
    链栈
    顺序栈
    入栈问题
    队列
    数学表达式配对栈
    链表设置
  • 原文地址:https://www.cnblogs.com/sjqq/p/6632325.html
Copyright © 2011-2022 走看看