WPF - 动画图像源更改

2023-12-28

我对 WPF 还很陌生,但我认为我需要做的事情相对简单。我需要创建一个图像“动画”,其中我每 0.25 秒更改一次图像源。

我有一个名为“animation”的文件夹,其中包含 1 到 25 png 实时图像(名为 1.png、2.png...25.png)。每个图像都与我的动画的不同帧相关。

我想编写 xaml 将图像从 1 更改为 2、从 2 更改为 3、从 3 更改为 4 等,每 0.25 秒更改一次,直到到达第 25 个图像,然后它应该循环回到开头。

我很可能需要编写一些 C# 来做到这一点。我希望它在可以与 UI 交互的线程上运行(如更新图像),但不会阻止 UI 线程。

提前致谢!


纯 XAML 解决方案可能如下所示,当然具有不同的图像和计时。

<Image>
    <Image.Triggers>
        <EventTrigger RoutedEvent="Loaded">
            <BeginStoryboard>
                <Storyboard RepeatBehavior="Forever">
                    <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Source"
                                                   Duration="0:0:2">
                        <DiscreteObjectKeyFrame KeyTime="0:0:0">
                            <DiscreteObjectKeyFrame.Value>
                                <BitmapImage UriSource="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"/>
                            </DiscreteObjectKeyFrame.Value>
                        </DiscreteObjectKeyFrame>
                        <DiscreteObjectKeyFrame KeyTime="0:0:1">
                            <DiscreteObjectKeyFrame.Value>
                                <BitmapImage UriSource="C:\Users\Public\Pictures\Sample Pictures\Penguins.jpg"/>
                            </DiscreteObjectKeyFrame.Value>
                        </DiscreteObjectKeyFrame>
                    </ObjectAnimationUsingKeyFrames>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Image.Triggers>
</Image>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF - 动画图像源更改 的相关文章

随机推荐

  • CSS 将所选文本的一部分向右对齐[重复]

    这个问题在这里已经有答案了 这是我的 HTML 的样子
  • 如何使两个按钮并排且响应灵敏?

    我有一个小任务 在使用桌面时需要并排两个按钮 然后在移动设备上它们堆叠在一起但尺寸没有减小 我已经设法将它们堆叠在一起 但它们的大小不同 每当我定义按钮的 大小时 它们都会挤在一起 在设备视图中看起来很丑陋 button backgroun
  • 动画系统的神经网络大小

    我决定使用神经网络来为我拥有的动画引擎创建行为 神经网络为我身体的每个部位接收 3 个向量和 1 个欧拉角 第一个向量 3 是位置 第二个向量是速度 第三个向量是角速度 欧拉角是身体部位的旋转角度 我的身体有 7 个部位 这些数据类型中的每
  • SQL:仅比较日期与月份和年份列

    我有一张桌子MonthlyShipments看起来像 partnumber quantity month year part1 12 6 2011 part1 22 5 2011 part1 32 4 2011 part1 42 3 201
  • Linux fedora tc qdisc 出现“错误:未找到指定的 qdisc”。

    我正在尝试在 Linux fedora 上运行以下命令 sudo tc qdisc add dev enp2s0 handle 1 0 root netem delay 0 loss 1 我检查了接口 enp2s0 并且设置正常 但我收到以
  • 创建 Vec 时借用的值存在的时间不够长

    编者注 这个问题是在 Rust 1 0 之前提出的 从那时起 许多函数和类型都发生了变化 某些语言语义也发生了变化 问题中的代码不再有效 但答案中表达的想法可能有效 我正在尝试列出目录中的文件并将文件名复制到我自己的目录中Vec 我尝试了几
  • TThreadedQueue 不能支持多个消费者吗?

    尝试在单生产者多消费者方案中使用 TThreadedQueue Generics Collections 德尔福 XE 这个想法是将对象推入队列并让多个工作线程排空队列 但它并没有按预期工作 当两个或多个工作线程调用 PopItem 时 将
  • javascript / jquery 时间倒计时

    我想使用纯 Javascript 或受益于 jquery 来创建一个函数来倒计时结束时间 例如 consumes a javascript date object function countDown endtimme 它应该以 html
  • Octokit.net 创建新存储库

    我在使用 Octokit net 创建新存储库时遇到问题 这是我的代码 public async Task stvoriNovi FormCollection collection string name collection Get na
  • 查找数组中最长的单词/字符串

    我刚刚开始学习 JavaScript 我正在尝试编写一个 JavaScript 来查找并打印数组中最长的单词 我想出了下面的代码 var longWords Penelope Johny Aubumayang Czechoslovakia
  • Keras 可以像张量流数据集一样预取数据吗?

    在TensorFlow的Dataset API中 我们可以使用dataset prefetch buffer size xxx 在GPU处理当前批次的数据时预加载其他批次的数据 因此 我可以充分利用GPU 我将使用 Keras 想知道是否k
  • 如何在 Swift 中从 CFTypeRef 转换为 AXUIElement

    此代码产生预期的调试输出type AXUIElement 但转储堆栈并表示动态转换在实际转换点失败 func mainWindow var ptr Unmanaged
  • 在片段之间滑动左/右动画

    我在这里发布问题是因为我找不到解决我的问题的方法 我读了很多关于 android 动画的东西 我实际上开发了一个 android 4 0 应用程序 我需要在片段 而不是布局 之间设置动画过渡 类似的帖子 使用布局但没有更精确的片段 http
  • CentOS:在 PHP 安装中启用 GD 支持

    如何在 CentOS 安装中启用 GD 支持 最终对我有用的是 yum install gd gd devel php gd 然后重新启动apache service httpd restart
  • 仅使用 for 循环和 if/else 操作来计算字符串中唯一字符的数量[重复]

    这个问题在这里已经有答案了 我应该找到字符串中唯一字符的数量 这里有一个问题 没有数组 甚至没有while循环 虽然for循环可以完成这个 如果不写一堆荒谬的东西 我似乎无法做到这一点if else下的陈述for循环相互检查每个 char
  • rootViewController 是黑色的并且没有显示任何内容

    我的第一个名为 Start ViewController 的 VC 在启动时只是黑色 应该是黄色 谁能帮我 这是我的 AppDelegate UIApplicationMain class AppDelegate UIResponder U
  • 使用 cocoapods iOS 找不到 FirebaseMessaging 模块

    我收到 找不到 FirebaseMessaging 模块 的错误 下面是我的 pod 文件结构 官方文档显示 Firebase Messaging 可用 我已经编写了 pod 文件并尝试安装它 终端中的统计信息不显示 FirebaseMes
  • 有没有办法实现IdentityServer的动态客户端注册?

    我们公司有一个 SSO 应用程序 我希望用 IdentityServer4 或 3 替换身份验证管道的很大一部分 我要替换的版本有自己的动态客户端注册自定义实现 不符合规范 和要管理的 UI它 有一个number https github
  • 如何在属性文件中转义冒号 (:)?

    我正在使用属性文件来存储应用程序的配置值 在其中一种情况下 我必须将一个值存储为xxx yyy zzz 当我这样做时 冒号会用反斜杠转义 导致值显示为xxx yyy zzz在属性文件中 我知道结肠 是一个标准分隔符PropertiesJav
  • WPF - 动画图像源更改

    我对 WPF 还很陌生 但我认为我需要做的事情相对简单 我需要创建一个图像 动画 其中我每 0 25 秒更改一次图像源 我有一个名为 animation 的文件夹 其中包含 1 到 25 png 实时图像 名为 1 png 2 png 25