lindexi

林德熙 - 微软最具价值专家和 .NET 基金会成员

林德熙

WPF 隐藏系统窗口菜单

本文告诉大家如何隐藏系统窗口菜单

一段能让 VisualStudio 炸掉的代码

本文告诉大家如何使用一段代码炸掉 VisualStudio 请不要在正式环境使用这个代码

WPF 通过位处理合并图片

本文告诉大家,在使用 WPF 合并两张图片的处理,可以使用像素之间的与或和异或的方式,对三个颜色的通道进行处理。

使用 ahk 让普通键盘变为Dvorak键盘

本文告诉大家,如何使用软件做出Dvorak键盘。 在开始说如何做之前,需要告诉大家,什么是Dvorak键盘。 Dvorak Simplified Keyboard /ˈdvɔːræk, dəˈvɔː-/ 德沃夏克 是1936由 August Dvorak等人做出来的键盘,他可以提高英文的输入的速度,传说使用这个键盘打字比现在常用的键盘会快几倍。因为他把最少用的字母在最难碰到的下排,而把常打的字放在右手边。如果经常打英文,可以试试把键盘换为这个,开始一定不会打很快,但是几个月后,打字速度就会变得很快。

[::/ ]::=

使用 RetroShare 分享资源

本文告诉大家如何使用 RetroShare 来分享资源。因为 RetroShare 是一个 p2p 分享的工具,所以他比现在很多云盘都好用,在网上,很多大神说可以用来代替电驴。之所以推荐这个软件,因为他的分享速度很快,即使是在校内网于外网的共享都可以有很快的速度。如果两个好友都是在内网,我这里可以达到 10MB 一秒,适合分享大文件和文件夹。

使用 Resharper 特性

本文告诉大家如何使用 Resharper 特性,在 VisualStudio 最好的插件就是 Resharper 不过他比较卡。

使用 Resharper 快速做适配器

如果需要做一个类的重写,需要重新写这个类的所有属性和函数,本文提供一个简单的方法让大家快速重写一个类的所有属性和函数。

使用 IncrediBuild 提升 VisualStudio 编译速度

我现在有一个 100M 的代码,需要快速去编译他,我寻找了很多方法,本文记录我找到的 IncrediBuild 用于提交编译速度。

上传代码 CodePlex

CodePlex是微软开源项目网站,有很多人都在上面传代码,我们也可以上传自己的代码

xaml 添加 region

本文告诉大家如何在 xaml 添加 region

wpf DoEvents

如果在执行一段卡UI的代码,这时如何让UI响应。如果存在代码需要获得依赖属性,那么代码就需要在UI线程执行,但是这时就会卡UI,为了让UI响应,所以就需要使用DoEvents来让UI响应。 首先需要知道,DoEvents是在 WinForm 有的,在 WPF 没有这个函数,但是可以自己写出来。

docfx 做一个和微软一样的文档平台

开发中,有一句话叫 最不喜欢的是写文档,最不喜欢的是看别人家代码没有文档。那么世界上文档写最 la 好 ji 的就是微软了,那么微软的api文档是如何做的?难道请了很多人去写文档? 实际上微软有工具用来生成 api 文档和教程。 我这里说的微软文档是:https://docs.microsoft.com/en-us/dotnet/articles/csharp/index 这个网站,不是以前的。

WPF 笔迹算法 从点集转笔迹轮廓

本文将告诉大家一些笔迹算法,从用户输入的点集,即鼠标轨迹点或触摸轨迹点等,转换为一个可在界面绘制显示笔迹画面的基础数学算法。尽管本文标记的是 WPF 的笔迹算法,然而实际上本文更侧重基础数学计算,理论上可以适用于任何能够支持几何绘制的 UI 框架上,包括 UWP 或 WinUI 或 UNO 或 MAUI 或 Eto 等框架

WPF 自定义控件入门 Focusable 与焦点

自定义控件时,如果自定义的控件需要用来接收键盘消息或者是输入法的输入内容,那就需要关注到控件的焦点

WPF 通过 EXIF 设置和读取图片的旋转信息

本文将告诉大家如何在 WPF 里面设置图片的 EXIF 信息,包括如何设置图片的旋转信息,以及如何读取 EXIF 的内容

WPF 界面打不开提示 System.ArithmeticException Overflow or underflow in the arithmetic operation 异常

本文告诉大家如何解决界面打不开,抛出 System.ArithmeticException: Overflow or underflow in the arithmetic operation 异常的修复方法

WPF 自定义文本框输入法 IME 跟随光标

本文告诉大家在 WPF 写一个自定义的文本框,如何实现让输入法跟随光标

WPF 稳定的全屏化窗口方法

本文来告诉大家在 WPF 中,设置窗口全屏化的一个稳定的设置方法。在设置窗口全屏的时候,经常遇到的问题就是应用程序虽然设置最大化加无边框,但是此方式经常会有任务栏冒出来,或者说窗口没有贴屏幕的边。本文的方法是基于 Win32 的,由 lsj 提供的方法,当前已在 1000 多万台设备上稳定运行超过三年时间,只有很少的电脑才偶尔出现任务栏不消失的情况

WPF 框架开发 ColumnDefinition 和 RowDefinition 的代码在哪

我的 VisualStudio 在更新到 2022 就构建不通过 WPF 仓库,提示我在 Grid 的代码里面找不到 ColumnDefinitionCollection 和 RowDefinitionCollection 等的定义,在我开始找 WPF 仓库关于这几个类型的定义时,居然找不到对应的源代码。本文来告诉大家在 WPF 仓库里面是如何存放几个类型

WPF 给类库设置设计时使用的资源字典

在开发 WPF 类库时,由于类库里面没有存在 App.xaml.cs 文件,而在对单个 XAML 进行开发时,设计器将会因为找不到资源文件的存在,而拿不到资源。本文告诉大家简单的方法,给设计器设置仅在设计时引用的资源

WPF 给 Grid 的辅助方法 添加行列名称绑定

有一些设计师喜欢改改改,界面的整体布局总是变更,如给 Grid 加一列删一行等,每次这样的更改的时候,都需要小心修改 Grid 里面的元素设置的行列序号。我认为在 Grid 简单的时候,当然大多数时候都应该让 Grid 不那么复杂,那么序号的可读性不错。如果 Grid 行列数量比较多,那么此时行列的序号的可读性将会降低,本文来告诉大家一个简单的方法,可以给 Grid 的行列添加名称绑定,让元素绑定到行列可以不使用序号,而是使用名称

WPF 设置 ShowInTaskbar 对窗口最小化的影响

在 WPF 中,如果设置了 ShowInTaskbar 为 False 那么窗口将不会在任务栏显示。此时如果设置窗口最小化,那么窗口将会收起来作为没有任务栏时的显示方法

WPF 笔迹触摸点收集工具

本文来安利大家一个工具,可以用来收集笔迹的触摸点,这个工具完全开源

WPF 滑动修改音量控件

本文来分享一个简单的控件,滑动的时候显示音量控制条

WPF 调试因为对象不同而绑定失效问题

在 WPF 使用绑定的时候,发现绑定不上,也许是因为绑定的对象不是当前作用的对象的原因。也许是绑定错了对象,或者对象被变更了。本文来告诉大家这个调试思路和方法

WPF 简易手绘笔迹支持回放的方法

手绘笔迹实际上就是需要支持回放的,手绘笔迹指的是在应用程序里面支持回放出手绘出来的笔迹。本文来告诉大家一个简易的方法

WPF 漂亮的现代化控件 新 ModernWPF 界面库

这是一个在 GitHub 上完全开源的库,有十分漂亮的界面,整个都是 Win10 风,界面部分和默认 UWP 相近

WPF 点击按钮时更改按钮样式界面效果的 XAML 实现方法

在 WPF 中按钮 Button 将会吃掉路由事件,此时的 EventTrigger 如果通过 RoutedEvent 是 MouseLeftButtonDown 那么将会拿不到路由事件,也就触发不了,因此样式将不会变更。简单的解决方法就是通过 VisualStateManager 配合 VisualState 来实现

WPF 获取本机所有字体拿到每个字符的宽度和高度

本文主要采用 GlyphTypeface 类尝试获取每个字符的宽度和高度的值,尽管这个方法和最终 WPF 布局使用的文本的宽度和高度是不相同的,但是依然可以作为参考

WPF 通过 InputManager 模拟调度触摸事件

在 WPF 中,框架可以分为两个部分,一个是渲染,另一个是交互。交互的入口是在 InputManager 里面,而实际的交互实现需要通过渲染布局和交互的路由事件才能完成。在输入管理提供了调度事件的方法,这个方法可以被传入路由事件,传入的路由事件将会被调度到路由事件指定的元素上进行触发。本文告诉大家如何模拟调度一个触摸事件

WPF 画布工具栏的可扩展设计

我在写一个和 PS 差很多的工具,这个工具中间有一个画布,而我需要写一个扩展很好做的工具栏集合,这个工具栏设计上需要支持可以让小伙伴愉快的拆卸,功能足够独立,使用方便。本文就来告诉大家我的这个设计方案

WPF 调用 InvalidateVisual 不触发 OnRender 的原因

我昨天和头像大人在解决一个坑,发现调用了 InvalidateVisual 的时候,不会触发 OnRender 方法。那么在什么时候会触发 OnRender 方法,在什么时候不会触发

WPF 用 AvalonEdit 开发简单的代码编辑器 支持高亮自动提示

用 WPF 开发一个代码编辑器的难度很低,因为行业里面有很多小伙伴开发过,这些小伙伴将自己的代码开源了,发布到 NuGet 上,所以让我开发一个代码编辑器的难度实在太低。在不要有奇特的要求情况下,通过 AvalonEdit 可以快速开发出自己想要的代码编辑器

WPF 轻量级 MVVM 框架入门 2.1.2

本文告诉大家如何使用本金鱼的 MVVM 轻量框架。 一个好的框架是不需要解释就可以让大家使用,但是本金鱼没有这个能力,所以就写了这个文章告诉大家如何使用。