lindexi

林德熙 - Windows 10 App Developer

林德熙

WPF 从文件创建图片的方法

本文告诉大家通过 FileStream 创建文件的方法

WPF 从 DrawingVisual 转 BitmapImage 图片

有一些库的设计是需要传入一个 BitmapImage 图片,但是我需要从界面代码创建图片,我没有文件,如何通过 DrawingVisual 画出的控件转换 BitmapImage 传给库? 需要将 DrawingVisual 转为 RenderTargetBitmap 然后将 RenderTargetBitmap 转为 BitmapImage 才可以

WPF 开启 ScrollViewer 的触摸滚动

在 ScrollViewer 如果需要收到触摸消息,通过 Manipulation 触摸滚动,不能只是通过设置 IsManipulationEnabled 方法,还需要设置 PanningMode 才可以

win10 uwp 通知列表

经常看到小伙伴问,问已经绑定列表,在进行修改时,不会通知界面添加或删除。这时问题就在,一般使用的列表不会在添加时通知界面,因为他们没有通知。 本文:知道什么是通知的列表,如何去写一个通知列表。

win2d 图片水印

本文告诉大家如何使用 win2d 给图片加上水印。

win10 uwp 显示SVG

本文说如何显示SVG

SourceYard 制作源代码包

本文带大家走进SourceYard开发之旅 在项目开发中,将一个大的项目拆为多个小项目解耦,减少模块之间的耦合。因为如果将代码放在一起,即使有团队的约束,但只要能写出的代码就会有小伙伴写出,很快就发现各个模块耦合的代码很多。但是对一个项目的拆分会让拆分出来的每一个项目都编译出一个 dll 增加运行文件的启动时间。 在开发中,常常会用到很多工具类,这些小轮子很多的功能基本就只有一个类,如何对这些小轮子进行管理?通过复制代码还是通过 Nuget 管理?

win10 uwp release 因为 Entry Point Not Found 无法启动

本文告诉大家如果在使用 release 编译时,无法启动应用,出现 Entry Point Not Found 如何让应用运行。

Roslyn 如何使用 MSBuild Copy 复制文件

本文告诉大家如何在 MSBuild 里使用 Copy 复制文件

dotnet core 使用 sqlite 部署到 Centos 服务器

本文告诉大家如何创建一个 asp dotnet core 程序,这个程序使用 sqlite 保存,部署程序到 Centos 7 服务器

dot net double 数组转 float 数组

本文告诉大家如果遇到 double 数组转 float 数组千万不要使用 Cast ,一般都使用 select 强转。

C# 使用转换语义版本号

本文告诉大家如何转换语义版本号,那么什么是语义版本号,语义版本号(semantic version)就是版本号带 alpha 等的版本号

C# 7.2 通过 in 和 readonly struct 减少方法值复制提高性能

在 C# 7.2 提供了一系列的方法用于方法参数传输的时候减少对结构体的复制从而可以高效使用内存同时提高性能

.net remoting 使用事件

在RPC如果需要使用事件,相对是比较难的。本文告诉大家如何在 .net remoting 使用事件。

WPF 如何在 WriteableBitmap 写文字

最近看到WPF 使用不安全代码快速从数组转 WriteableBitmap 可以快速从数组转 WriteableBitmap 所以就让他画一些元素,但是发现元素有文字就没法了。 本文告诉大家如何在 WriteableBitmap 把文字画上去。

win10 uwp 求两个矩形相连的几何

在写笔迹的过程,我需要做橡皮的功能,橡皮是一个矩形在移动,因为移动的过程是不连续的,需要将多个矩形组合为连续的几何

WPF 在绑定表达式添加计算

很多时候一些简单的使用绑定需要对绑定的源做处理就需要通过转换器,这样的代码写起来不好看 本文告诉大家通过一个简单的库可以实现在界面绑定的时候通过表达式不需要转换

WPF 弹出 popup 里面的 TextBox 无法输入汉字

这是一个 wpf 的bug,在弹出Popup之后,如果 Popup 里面有 TextBox ,这时无法在里面输入文字。

WPF 源代码 从零开始写一个 UI 框架

需要知道 WPF 是一个 UI 框架,作为一个 UI 框架,最主要的就是交互。也就是 UI 框架需要有渲染显示和处理用户输入的功能。 如果直接告诉大家 WPF 里面有哪些类,估计没有几位小伙伴会听下去,要么就是讲的类太简单,看过去我也就知道了,要么就是这个类可能我一直都不会用到他,即使可能会用到也早就忘了。 本文不会直接告诉大家 WPF 的源代码是如何写的,而是从零开始一起来写一个 UI 框架,在写的过程就会了解到为什么 WPF 可以这样写,为什么需要这样写,和 WPF 这样写的好处。 本文适合 WPF 的开发者同样也适合其他语言希望自己写一个 UI 框架的小伙伴。

C# 很少人知道的科技

本文来告诉大家在C#很少有人会发现的科技。即使是工作了好多年的老司机也不一定会知道,如果觉得我在骗你,那么请看看下面。

微软最具价值专家 MVP 如何获得 Resharper 的免费功能

很多的开发工具都欢迎微软最具价值专家 MVP 使用这些工具,为了吸引更多的用户,会有各种活动 小伙伴都知道 Resharper 是太阳系 IDE 的最好插件,但是这个插件是比较贵的,虽然我的团队买了一堆 为了在自己的设备上体验 Resharper 强大的功能,于是我就通过 MVP 的福利注册了 Resharper 的账号,这样就可以免费使用,但是有一个义务就是给 Resharper 多加宣传。

C# 在 8.0 对比 string 和 string? 的类型

在 C# 8.0 的时候提供了可空字符串的判断,但是可空字符串和字符串的类型是不是不同的?

WPF 一个空的 WPF 程序有多少个窗口

好多小伙伴说 WPF 的程序有五个窗口,但是我尝试使用了 EnumThreadWindows 去获取的时候居然拿到了 10 多个窗口

VisualStudio 使用新项目格式快速打出 Nuget 包

本文告诉大家如何通过 VisualStudio 的新项目格式快速打出 Nuget 包

Roslyn 使用 Target 替换占位符方式生成 nuget 打包

本文告诉大家如何编写在编译过程修改打包文件

VisualStudio 通过 EditorBrowsable 隐藏不开放的属性或方法

在开发中,总是会有一些方法不期望让大家直接使用到,就可以通过 EditorBrowsable 特性让智能提示不显示这个属性或方法

恢复 U 盘隐藏文件夹

在U盘放在打印的设备打印一个文件之后,发现U盘的文件夹都找不到了

C# 通过 probing 指定 dll 寻找文件夹

在很大的项目开发,会发现项目引用的 dll 会很多,我想要按照不同的功能,将不同的 dll 放在不同的文件夹

Roslyn 如何基于 Microsoft.NET.Sdk 制作源代码包

本文告诉大家如何做源代码包,源代码包的意思是安装的包不是安装dll的方式,而是使用源代码的方式。也就是最后是编译包的源代码而不是添加dll,这个方式是解决想要把项目分小,功能分细,但是不希望项目有很多的 dll,因为如果项目有很多 dll 会让软件打开的时间比较长

C# Span 入门

本文简单告诉大家如何使用 Span 新的功能 需要知道 Span 是 7.2 才有的功能,如果在正式项目使用,建议安装 Nuget 的方式