摘要: 最近写了一些 MVVM 框架的文章,翻了一些 Microsoft Docs 的文档,顺便就对 MVVM 本身来了兴致,想看看更多当年相关的文档。在 MVVM 出现后十多年,我在不同的场合见到过多种 MVVM 的实现方式,也看到过各种 MVVM 框架的多次改进(这些框架通常包含多个用于实现解耦体系结构 阅读全文
posted @ 2020-12-09 09:29 dino.c 阅读(3049) 评论(20) 推荐(17) 编辑
摘要: Kino.Toolkit.Wpf Kino.Toolkit.Wpf是一组简单实用的WPF控件与工具,用于介绍自定义控件的入门。相关博客地址如下: 开始一个自定义控件库项目 介绍开始一个自定义控件库项目需要考虑的地方,包括版本号、目录结构等。 从ContentControl开始入门自定义控件 Cont 阅读全文
posted @ 2019-05-13 15:24 dino.c 阅读(6045) 评论(3) 推荐(18) 编辑
摘要: UWP自定义控件的入门文章 "[UWP 自定义控件]了解模板化控件(1):基础知识" "[UWP 自定义控件]了解模板化控件(2):模仿ContentControl" "[UWP 自定义控件]了解模板化控件(2.1):理解ContentControl" "[UWP 自定义控件]了解模板化控件(3): 阅读全文
posted @ 2018-11-16 11:16 dino.c 阅读(1460) 评论(2) 推荐(3) 编辑
摘要: 1. 前言 今天 ChokCoco 大佬发布了一篇博客 超强的苹果官网滚动文字特效实现,iPhone 我是买不起的,但不妨碍我对抄特效感兴趣,正好我这周安排的工作已经完成了,于是有空练练手实现了一个 WPF 版本。最终效果如下: 2. 原理 这个特效的原理在 ChokCoco 的文章里已经讲解得很详 阅读全文
posted @ 2022-10-22 00:42 dino.c 阅读(4704) 评论(13) 推荐(29) 编辑
摘要: 1. 融合效果 融合效果是指对两个接近的元素进行高斯模糊后再提高对比度,使它们看上去“粘”在一起。在之前的一篇文章中,我使用 Win2D 实现了融合效果,效果如下: 不过 Win2D 不适用于 WPF,在 WPF 中可以使用 BlurEffect 配合自定义 Effect 实现类似的效果。Handy 阅读全文
posted @ 2022-09-27 09:04 dino.c 阅读(3690) 评论(15) 推荐(40) 编辑
摘要: 1. 融合效果 在 CSS 中有一种实现融合效果的技巧,使用模糊滤镜(blur)叠加对比度滤镜(contrast)使两个接近的元素看上去“粘”在一起,如下图所示: 博客园的 ChokCoco 就用这个技巧实现了很多不同的玩法并写了很多文章,例如这篇: 你所不知道的 CSS 滤镜技巧与细节 我一直对这 阅读全文
posted @ 2022-09-22 08:59 dino.c 阅读(3353) 评论(7) 推荐(27) 编辑
摘要: 1. 前言 最近需要一个 WPF 的表盘控件,之前 Cyril-hcj 写过一篇不错的博客 《WPF在圆上画出刻度线》,里面介绍了一些原理及详细实现的代码: double radius = BackEllipse.Width / 2; double min = 0; double max = 100 阅读全文
posted @ 2022-08-31 09:28 dino.c 阅读(3860) 评论(6) 推荐(41) 编辑
摘要: 前言 上一篇文章 我介绍了如何使用 App Center 的服务自动在 Azure DevOps Service 和 Github 中创建 Bug 或 Issue。通常来说,这两个平台在创建 Bug 或 Issue 后会有一些通知机制,例如通过 Email 或 Webhook 让团队成员知道有些东西 阅读全文
posted @ 2022-03-31 20:44 dino.c 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 我在之前的一篇文章 《使用 Visual Studio App Center 持续监视应用使用情况和问题》 中介绍了 App Center 的基本功能及使用入门,其中 诊断 可以自动手机用户的崩溃或异常,并在 App Center 的网页显示详细的错误信息。 但是日常工作中我并不会常常登录 App 阅读全文
posted @ 2022-03-31 16:45 dino.c 阅读(373) 评论(0) 推荐(2) 编辑
摘要: 1. 可变字体 上图中的两个动画,一个文字直接变粗,一个渐渐变粗,我觉得后者会更有趣。但普通的字体可达不到这种效果,例如微软雅黑,无论怎么调整它的 FontWeight,实际上它也只有三种粗细: 这时候我们需要可变字体,可变字体(Variable fonts)是OpenType字体规范上的演进,它允 阅读全文
posted @ 2022-03-27 23:00 dino.c 阅读(1241) 评论(0) 推荐(18) 编辑
摘要: 1. 前言 WPF 的 TextBlock 提供了大部分常用的文字修饰方法,在日常使用中基本够用。如果需要更丰富的表现方式,WPF 也提供了其它用起来复杂一些的工具去实现这些需求。例如这篇文章介绍的文字描边,就有几种方法可以在 WPF 中呈现。这篇文章将简单介绍这实现文字描边的方法。 2. 将文字转 阅读全文
posted @ 2022-03-20 21:19 dino.c 阅读(3579) 评论(7) 推荐(36) 编辑
摘要: 最近在学习怎么用 Shazzam Shader Editor 编写自定义的 Effect,并试着去实现阴影、内阴影和长阴影的效果。结果我第一步就放弃了,因为阴影用到的高斯模糊算法对我来说太太太太太太太太难了,最后只好用些投机取巧的方法来模仿这几种效果。 1. 阴影 WPF 中的 DropShadow 阅读全文
posted @ 2022-02-26 22:45 dino.c 阅读(3449) 评论(3) 推荐(10) 编辑
摘要: 重要提醒 8.0.0-preview 4 对部分类进行了重命名,这篇文章中的一些内容已经过时,具体更改请参考以下链接: https://github.com/CommunityToolkit/dotnet/releases/tag/v8.0.0-preview4 关于 MVVM Toolkit 最近 阅读全文
posted @ 2022-01-28 09:21 dino.c 阅读(2615) 评论(6) 推荐(12) 编辑