原文:示例:WPF中自定义StoryBoarService在代码中封装StoryBoard.Animation用于简化动画编写 一.目的:通过对StoryBoard和Animation的封装来简化动画的编写 二.示例: 说明:渐隐藏是WPF中比较常用的动画,上图是通过StoryBoarService封装后的效果,在代码中只要执行如下代码即可: DoubleStoryboardEngine.Create(1, 0, 1, "Opacity").Start(element); 上面的关闭效…
无论是 WPF 还是 UWP 开发,如果用 Storyboard 和 Animation 做动画,我们多数时候都会设置 From 和 To 属性,用于从起始值动画到目标值.然而动画并不总是可以静态地指定这些值,因为更多的时候动画的起始值和目标值取决于当前 UI 的状态. 本文中,我将将尽量避免设置 From 和 To 值,让动画可以随时中断并重新开始,而中途不会出现突兀的变化. 本文涉及到的代码均在 GitHub 上以 MIT License 开源:walterlv/sharing-demo a…
无论是在工作和学习中使用WPF时,我们通常都会接触到CustomControl,今天我们就CustomWindow之后的一些边角技术进行探讨和剖析. 窗口(对话框)模态闪动(Blink) 自定义窗口的四边拖拽支持 自定义窗口最大化(位置/大小) 童鞋们在WPF开发过程中是否觉得默认的Style太丑,或者是由Balabala的一些原因,使你觉得重写一个“高大上”的Window来符合项目的UI要求(小明:“我们使用Telerik”  老师:“什么?你说你们使用第三方UI框架?滚出去!”)经过半天的努…
定义动画: 直接使用Element进行BeginAnimation DoubleAnimation animation = new DoubleAnimation(); animation.By = ; animation.Duration = TimeSpan.FromSeconds(); btnTest.BeginAnimation(Button.WidthProperty, animation); 也可以将Animation添加到StoryBoard中去,这样可以一次执行多个动画: Sto…
原文:WPF中反转3D列表项 WPF中反转3D列表项                                                         周银辉记得在苹果电脑中有一个很酷的3D旋转效果, 它可以将某项的正反面进行反转, 在WPF中可以很轻松地做到该效果.点击这里查看也可以粘贴此代码XamlPad中查看: <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    …
WPF Tutorial : Beginning [^] WPF Tutorial : Layout-Panels-Containers & Layout Transformation [^] WPF Tutorial : Fun with Border & Brush [^] WPF Tutorial - TypeConverter & Markup Extension [^] WPF Tutorial - Dependency Property [^] WPF Tutorial…
Windows 10 的创造者更新为开发者们带来了 Connected Animation 连接动画,这也是 Fluent Design System 的一部分.它的视觉引导性很强,用户能够在它的帮助下迅速定位操作的对象. 不过,这是 UWP,而且还是 Windows 10 Creator’s Update 中才带来的特性,WPF 当然没有.于是,我自己写了一个“简易版本”. ▲ Connected Animation 连接动画 模拟 UWP 中的 API UWP 中的连接动画能跑起来的最简单代…
在2010年之前,我都是用Blend创建动画,添加触发器实现自动动画,后来写成代码创建的方式.如今Blend已经集成到Visual Studio安装镜像中了,最新的VS2015安装,Blend的操作界面已经十分接近VS,难怪有人吐槽Win10 Insider Preview(10025之前版本)的图标设计都是程序员搞出来的——这靠近VS的界面是怎么回事,不是应该更接近于Photoshop.Flash什么的吗? 如果你们公司没有大牛设计师,估计是不太可能使用Blend的. 这是一个点击Show或者…
最近在用WPF做简单动画,以下是几点经验总结: 1. 使用DispatcherTimer做动画 VB6的年代大家就用Timer做动画了,不用多解释,这个DispatcherTimer和本身的Timer区别是它和UI线程在一起,简单说就是可以在Tick里面更改UI内容,另外貌似时间间隔比Timer准一些...没证实过 适用范畴:计时器,表,固定时间刷新的数据板 2. 使用Animation和StoryBoard做动画 这个高端大气上档次,首先它硬件无关,其次平滑可人.比如用timer移动一个but…
1. 前言 这篇文章介绍WPF UI元素的两步布局过程,并且通过Resizer控件介绍只使用Measure可以实现些什么内容. 我不建议初学者做太多动画的工作,但合适的动画可以引导用户视线,提升用户体验.例如上图的这种动画,这种动画挺常见的,在内容的高度改变时动态地改变自身的高度,除了好看以外,对用户体验也很有改善.可惜的是WPF本身没有默认这种这方面的支持,连Expander的展开/折叠都没有动画.为此我实现了一个可以在内容大小改变时以动画的方式改变自身大小的Resizer控件(想不到有什么好…