WPF 实现雪花效果
雪花控件类:
class MM:Control
{
DispatcherTimer dispatcherTimer = new DispatcherTimer();
public MM()
{
dispatcherTimer.Interval = TimeSpan.FromMilliseconds(100); ;
dispatcherTimer.Tick += DispatcherTimer_Tick;
dispatcherTimer.Start();
} private void DispatcherTimer_Tick(object sender, EventArgs e)
{
this.InvalidateVisual();
} protected override void OnRender(DrawingContext drawingContext)
{
var currentcolor = Colors.White;
Brush brush = new RadialGradientBrush(currentcolor,
Color.FromArgb(0, currentcolor.R, currentcolor.G, currentcolor.B));
Random r = new Random(); for (int i = 0; i < 530; i++)
{
var w = 35 * r.NextDouble();
var rect =
new RectangleGeometry(
new Rect(new Point(r.Next(10,(int)this.Width), r.Next(10, (int)this.Height)),
new Size(w, w)));
drawingContext.DrawGeometry(brush, null, rect);
} }
}
前台代码:
<Window x:Class="WpfAppTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfAppTest"
mc:Ignorable="d" WindowStyle="None" AllowsTransparency="True" Top="100" Left="100"
Title="MainWindow" Height="450" Width="800">
<Window.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#05438C" Offset="0"/>
<GradientStop Color="White" Offset="0.9"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Window.Background>
<local:MM x:Name="cc" HorizontalAlignment="Left" Height="417.114" VerticalAlignment="Top" Width="791.112" RenderTransformOrigin="0.5,0.5" Margin="0,0.007,0,0">
<local:MM.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform Angle="0.387"/>
<TranslateTransform/>
</TransformGroup>
</local:MM.RenderTransform>
</local:MM>
</Window>
实现效果:

WPF 实现雪花效果的更多相关文章
- CAEmitterLayer实现雪花效果
CAEmitterLayer 简介 在iOS5.0中,Apple引入了CAEmitterLayer层,CAEmitterLayer是一个高性能的粒子效果引擎,被用来创建实时粒子动画,如:烟雾,火,雨等 ...
- WPF提示框效果
WPF提示框效果 1,新建WPF应用程序 2,添加用户控件Message 3,在Message中编写如下代码 <Border x:Name="border" BorderTh ...
- wpf 模拟3D效果(和手机浏览图片效果相似)(附源码)
原文 wpf 模拟3D效果(和手机浏览图片效果相似)(附源码) pf的3D是一个很有意思的东西,类似于ps的效果,类似于电影动画的效果,因为动画的效果,(对于3D基础的摄像机,光源,之类不介绍,对于依 ...
- Html页面雪花效果的实现
简单介绍 昨天修改了一下博客所用的模板,冬天来了,给自己的博客加点雪花,感觉更有意境. 百度找到了非常多的结果,最终还是选用了cfs.snow.js,很赞压缩之后只有1kb左右,而且不会影响页面使用, ...
- 6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果
1 粒子 演示样例 2 类图关系 3 系统原生粒子 CCParticleSystem 全部粒子系统的父类 CCParticleSystemPoint. CCParticleSystemQuad ...
- [WPF] 圆形等待效果
原文:[WPF] 圆形等待效果 自己做着玩儿的,留着以后用,效果类似下面的 GIF 动画. <Grid Width="35" Height="35"> ...
- WPF实现射线效果动画
原文:WPF实现射线效果动画 最近的一个项目中有个需求是:从一个点向其它多个点发出射线,要求这些射线同时发出,同时到达. 我就想到了用WPF的动画来实现.WPF中有Line类用于绘制直线,但这个类中好 ...
- WPF 的毛玻璃效果
原文:WPF 的毛玻璃效果 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/koloumi/article/details/76917519 其实很简 ...
- WPF InkCanvas 毛笔效果
原文:WPF InkCanvas 毛笔效果 1.先来看看InkCanvas的一般用法: <InkCanvas> <InkCanvas.DefaultDrawingAttrib ...
- WPF实现抽屉效果
原文:WPF实现抽屉效果 界面代码(xaml): <Window x:Class="TransAnimation.MainWindow" xmlns="http:/ ...
随机推荐
- HashMap存储自定义类型键值-Linked Hash集合
HashMap存储自定义类型键值 练习∶每位学生(姓名,年龄)都有自己的家庭住址.那么,既然有对应关系,则将学生对象和家庭住址存储到map集合中.学生作为键,家庭住址作为值.注意,学生姓名相同并且年龄 ...
- DataX插件二次开发指南
一. DataX为什么要使用插件机制? 从设计之初,DataX就把异构数据源同步作为自身的使命,为了应对不同数据源的差异.同时提供一致的同步原语和扩展能力,DataX自然而然地采用了框架 + 插件 的 ...
- ReentrantLock介绍及源码解析
ReentrantLock介绍及源码解析 一.ReentrantLock介绍 ReentrantLock是JUC包下的一个并发工具类,可以通过他显示的加锁(lock)和释放锁(unlock)来实现线程 ...
- 网络连接(CSP-J 2021 T3)
一道又臭又长的模拟题目..... 主要有几个小技巧可以帮大家省一省代码: 1.scanf("%d.%d",&b,&c); 这里是定了一个格式如果不按格式来就不输入后 ...
- 重学SpringBoot. step7 高并发 秒杀
高并发 高并发最容易出现的问题就是数据安全能不能得到保障. 你需要保证速度,又需要保证数据安全,那么速度也必然会有所下降. 所以最简单的办法就是提升硬件.或者把Mysql换成MongoDB,加个Red ...
- spring security登录认证流程解析
转 https://blog.csdn.net/qq_37142346/article/details/80032336 1.说明 用户认证流程 认证结果如何在多个请求之间共享 获取认证用户信息.用户 ...
- vs code 关联gitee码云或github以及GIT 常用命令
一.准备 1.本地安装vs code 和GIT源代码管理工具 2.配置vscode git全局变量 打开左下角设置-->点击用户-->搜索git.path-->settings.js ...
- C#小知识之中英文转换、去空格
一.中英文转换 1.安装NPinYin 2.编写代码 string str = "这里是测试的中文字符串"; string str1 = Pinyin.GetChineseText ...
- 2.17 win32 按钮事件的处理
按钮的本质就是窗口 点击查看代码 void CreateButton(HWND hwnd) { HWND hwndPushButton; HWND hwndCheckBox; HWND hwndRad ...
- Windows下小狼毫配置五笔拼音方案
Windows下小狼毫配置五笔拼音方案 目录 Windows下小狼毫配置五笔拼音方案 1 下载并安装小狼毫rime 2 配置五笔.五笔拼音方案 3 安装设置五笔拼音混合输入 4 设置输入方案 1 下载 ...