摘要: Kino.Toolkit.Wpf " " " " " " " " " " Kino.Toolkit.Wpf是一组简单实用的WPF控件与工具,用于介绍自定义控件的入门。相关博客地址如下: "开始一个自定义控件库项目" 介绍开始一个自定义控件库项目需要考虑的地方,包括版本号、目录结构等。 "从Conte阅读全文
posted @ 2019-05-13 15:24 dino.c 阅读(140) 评论(0) 编辑
摘要: UWP自定义控件的入门文章 "[UWP 自定义控件]了解模板化控件(1):基础知识" "[UWP 自定义控件]了解模板化控件(2):模仿ContentControl" "[UWP 自定义控件]了解模板化控件(2.1):理解ContentControl" "[UWP 自定义控件]了解模板化控件(3):阅读全文
posted @ 2018-11-16 11:16 dino.c 阅读(178) 评论(2) 编辑
摘要: 1. 为什么要自定义RibbonWindow 自定义Window有可能是设计或功能上的要求,可以是非必要的,而自定义RibbonWindow则不一样: 如果程序使用了自定义样式的Window,为了统一外观需要把RibbonWindow一起修改样式。 为了解决RibbonWindow的BUG。 如上图阅读全文
posted @ 2019-06-13 09:15 dino.c 阅读(266) 评论(1) 编辑
摘要: 1. 什么是番茄工作法 番茄工作法是简单易行的时间管理方法,是由弗朗西斯科·西里洛于1992年创立的一种相对于GTD更微观的时间管理方法。 做法: 1. 每天开始的时候规划今天要完成的几项任务 2. 设定你的定时器,时间是25分钟。 3. 开始完成第一项任务,直到25分钟结束。 4. 停止工作,休息阅读全文
posted @ 2019-06-12 09:39 dino.c 阅读(395) 评论(3) 编辑
摘要: 1. 前言 "上一篇文章" 介绍了使用WindowChrome自定义Window,实际使用下来总有各种各样的问题,这些问题大部分都不影响使用,可能正是因为不影响使用所以一直没得到修复(也有可能别人根本不觉得这些是问题)。 这篇文章我总结了一些实际遇到的问题及其解决方案。 2. WindowChrom阅读全文
posted @ 2019-06-12 09:03 dino.c 阅读(305) 评论(2) 编辑
摘要: 1. 为什么要自定义Window 对稍微有点规模的桌面软件来说自定义的Window几乎是标配了,一来设计师总是克制不住自己想想软件更个性化,为了UI的和谐修改Window也是必要的;二来多一行的空间可以添加很多功能,尤其是上边缘,因为被屏幕限制住鼠标的移动所以上边缘的按钮很容易选中。做桌面开发总有一阅读全文
posted @ 2019-06-11 09:01 dino.c 阅读(430) 评论(4) 编辑
摘要: 1. 前言 本来打算写一篇《自定义Window》的文章,但写着写着发觉内容太多,所以还是把使用WindowChrome自定义Window需要用到的部分基础知识独立出来,于是就形成了这篇文章。 无论是桌面编程还是日常使用,Window(窗体)都是最常接触的UI元素之一,既然Window这么重要那么多了阅读全文
posted @ 2019-06-10 09:36 dino.c 阅读(366) 评论(3) 编辑
摘要: 1. 前言 我常常看到同一个应用程序中的表单的按钮————也就是“确定”、“取消”那两个按钮————实现得千奇百怪,其实只要使用统一的Style起码就可以统一按钮的大小,而我喜欢更进一步将”确定“、”取消“或其它按钮封装进一个自定义控件里。 这篇文章介绍了另一种ItemsControl的实现方式,并阅读全文
posted @ 2019-06-05 09:04 dino.c 阅读(186) 评论(7) 编辑
摘要: 1. 需求 加载后让第一个输入框或者焦点是个很基本的功能,典型的如“登录”对话框。一般来说“登录”对话框加载后“用户名”应该马上获得焦点,用户只需输入用户名,点击 ,再输入密码,点击回车就完成了登录操作。 在WPF中要让一个控件在加载时获得焦点应该很简单,只需要在Loaded事件后调用 就行了。但有阅读全文
posted @ 2019-06-03 09:02 dino.c 阅读(280) 评论(3) 编辑
摘要: 1. WPF布局一个表单 在WPF中布局表单一直都很传统,例如使用上面的XAML,它通过Grid布局一个表单。这样出来的结果整整齐齐,看上去没什么问题,但当系统里有几十个表单页以后需要统一将标签改为上对齐,或者标签和控件中加一个:号等需求都会难倒开发人员。一个好的做法是使用某些控件库提供的表单控件;阅读全文
posted @ 2019-05-29 09:17 dino.c 阅读(425) 评论(2) 编辑
摘要: 1. 为什么选择Aero2 除了以外观为卖点的控件库,WPF的控件库都默认使用“素颜”的外观,然后再提供一些主题包。这样做的最大好处是可以和原生控件或其它控件库兼容,而且对于大部分人来说模仿原生的主题也比自己设计一套好看的UI容易得多。 WPF有以下几种原生 "主题" : |主题文件|桌面主题| |阅读全文
posted @ 2019-05-27 09:03 dino.c 阅读(437) 评论(2) 编辑
摘要: 1. 前言 WPF有一个灵活的UI框架,用户可以轻松地使用代码控制控件的外观。例设我需要一个控件在鼠标进入的时候背景变成蓝色,我可以用下面这段代码实现: 但一般没人会这么做,因为这样做代码和UI过于耦合,难以扩展。正确的做法应该是使用代码告诉ControlTemplate去改变外观,或者控制Cont阅读全文
posted @ 2019-05-22 09:06 dino.c 阅读(389) 评论(6) 编辑