WPF中自定义Loading图

news/2025/1/14 22:12:00/

纯前端方式,通过动画实现Loading样式,如图所示
Loading动画

<Grid Width="35" Height="35" HorizontalAlignment="Center" VerticalAlignment="Center" Name="Loading"><Grid.Resources><DrawingBrush x:Key="brush" Stretch="None" AlignmentX="Center" AlignmentY="Top"><DrawingBrush.Drawing><GeometryDrawing Brush="Black"><GeometryDrawing.Geometry><EllipseGeometry RadiusX="2" RadiusY="5"/></GeometryDrawing.Geometry></GeometryDrawing></DrawingBrush.Drawing></DrawingBrush></Grid.Resources><Rectangle x:Name="r01" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="0"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r02" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="30"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r03" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="60"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r04" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="90"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r05" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="120"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r06" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="150"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r07" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="180"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r08" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="210"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r09" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="240"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r10" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="270"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r11" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="300"/></Rectangle.RenderTransform></Rectangle><Rectangle x:Name="r12" Fill="{StaticResource brush}" Opacity="0.2" RenderTransformOrigin="0.5,0.5"><Rectangle.RenderTransform><RotateTransform Angle="330"/></Rectangle.RenderTransform></Rectangle><Grid.Triggers><EventTrigger RoutedEvent="Grid.Loaded"><BeginStoryboard><Storyboard RepeatBehavior="Forever"><DoubleAnimation Storyboard.TargetName="r01" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.00000" To="0"/><DoubleAnimation Storyboard.TargetName="r02" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.08333" To="0"/><DoubleAnimation Storyboard.TargetName="r03" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.16666" To="0"/><DoubleAnimation Storyboard.TargetName="r04" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.24999" To="0"/><DoubleAnimation Storyboard.TargetName="r05" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.33332" To="0"/><DoubleAnimation Storyboard.TargetName="r06" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.41665" To="0"/><DoubleAnimation Storyboard.TargetName="r07" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.49998" To="0"/><DoubleAnimation Storyboard.TargetName="r08" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.58331" To="0"/><DoubleAnimation Storyboard.TargetName="r09" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.66664" To="0"/><DoubleAnimation Storyboard.TargetName="r10" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.74997" To="0"/><DoubleAnimation Storyboard.TargetName="r11" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.83330" To="0"/><DoubleAnimation Storyboard.TargetName="r12" Storyboard.TargetProperty="Opacity" AutoReverse="True" Duration="0:0:0.08333" BeginTime="0:0:0.91663" To="0"/></Storyboard></BeginStoryboard></EventTrigger></Grid.Triggers>
</Grid>

http://www.ppmy.cn/news/1001828.html

相关文章

大同市副市长孟维君赴大同互联网职业技术学院指导建设工作

8月2日&#xff0c;大同市副市长孟维君一行莅临大同互联网职业技术学院&#xff08;以下简称&#xff1a;大同互联网学院&#xff09;&#xff0c;对学院的建设工作进行了重要指导。孟维君副市长深入施工现场&#xff0c;详细了解了项目施工的进展情况&#xff0c;并提出三点重…

SpringSecurity5.7+最新案例 -- 用户名密码+验证码+记住我······

简介 根据最近一段时间的设计以及摸索&#xff0c;对SpringSecurity进行总结&#xff0c;目前security采用的是5.7版本&#xff0c;和以前的版本最大的差别就是&#xff0c;以前创建SecurityConfig需要继承WebSecurityConfigurerAdapter&#xff0c;而到了5.7以后&#xff0c;…

学习系统编程No.35【基于信号量的CP问题】

引言&#xff1a; 北京时间&#xff1a;2023/8/2/12:52&#xff0c;时间飞逝&#xff0c;恍惚间已经来到了八月&#xff0c;给我的第一感觉就是快开学了&#xff0c;别的感觉其实没有&#xff0c;哈哈&#xff01;看着身边的好友网络相关知识都要全部学完了&#xff0c;就好像…

JS中常见的模块管理规范梳理

一、CommonJS规范 CommonJS规范是一种用于JavaScript模块化开发的规范&#xff0c;它定义了模块的导入、导出方式和加载机制&#xff0c;主要用在Node开发中。 1. 使用场景 服务器端开发&#xff1a;Node.js是使用CommonJS规范的&#xff0c;因此在服务器端开发中&#xff0…

初识集合和背后的数据结构

目录 集合 Java集合框架 数据结构 算法 集合 集合&#xff0c;是用来存放数据的容器。其主要表现为将多个元素置于一个单元中&#xff0c;用于对这些元素进行增删查改。例如&#xff0c;一副扑克牌(一组牌的集合)、一个邮箱(一组邮件的集合&#xff09;。 Java中有很多种集…

Netty 入门指南

文章目录 前言Netty介绍Netty发展历程Netty核心组件实现HTTP服务器总结 前言 上文《BIO、NIO、IO多路复用模型详细介绍&Java NIO 网络编程》介绍了几种IO模型以及Java NIO&#xff0c;了解了在网络编程时使用哪种模型可以提高系统性能及效率。即使Java NIO可以帮助开发人员…

考研408 | 【计算机网络】概述

计算机网络体系结构 计算机网络概述&#xff1a;1.概念&#xff0c;组成&#xff0c;功能&#xff0c;分类2.标准化工作及相关组织3.性能指标体系结构&参考模型&#xff1a;1.分层结构2.协议&#xff0c;接口&#xff0c;服务3.ISO/OSI模型4.TCP/IP模型 目录 计算机网络体…

高质量代码究竟依赖设计还是重构而来?

点击链接了解详情 导读 一个有所追求的程序员一定都希望自己能够写出高质量的代码&#xff0c;但高质量代码从何而来呢&#xff1f;有人认为是设计出来的&#xff0c;就像一栋稳固的大厦&#xff0c;如果没有前期优秀的设计那么肯定难逃豆腐渣工程的命运&#xff1b;也有人认为…