lindexi

林德熙 - Windows 10 App Developer

林德熙

从 dotnet core 3.0 的特性让 WPF 布局失效讨论 API 兼容

在 dotnet core 3.0 为了支持 IEEE 浮点数计算标准,修改了 Math.Max 的算法,于是在 WPF 的 Track 里面的布局依赖于之前的计算,于是在 dotnet core 3.0 的修改就让布局计算不对了。改动现有 API 的行为会让现有的代码出现不兼容问题,那么要让一个框架能稳定支持升级需要满足什么条件

C# 使用反射获取私有属性的方法

本文告诉大家多个不同的方法使用反射获得私有属性,最后通过测试性能发现所有的方法的性能都差不多

VisualStudio 如何在 NuGet 包里面同时包含 DEBUG 和 RELEASE 的库

我在开发的时候需要使用到一些 DEBUG 库进行调试,但是我的库是通过 NuGet 给用户的,如果在 NuGet 里面使用到了 DEBUG 的库那么会让代码的运行效率降低。于是我就找到一个方法,可以在 NuGet 同时打包调试和发布的包,这样在用户调试的时候就可以使用调试的代码

WPF 绑定的默认模式

小伙伴绑定了一个属性,但是发现属性在更新的时候没有同步到后台,他说在 WPF 绑定的默认值是什么?为什么没有设置 Mode 的属性,有的是双向有的是单向?本文就来告诉大家在 WPF 定义的依赖属性是如何控制绑定的是双向还是单向的方法

WPF 类型的构造函数执行符合指定的绑定约束的调用时引发了异常

本文告诉大家如果遇到类型“Foo.MainWindow”的构造函数执行符合指定的绑定约束的调用时引发了异常的时候可以如何知道是哪个不清真代码

win10 uwp 自定义标记扩展

在 UWP 使用的 Binding 或 StaticResource 这些都是标记扩展,在 Windows 10 Fall Creators Update 版本号是 10.0.16299.0 和以上支持在 UWP 自定义标记扩展,也就是定义了一个可以在 xaml 使用的标记的方法

VisualStudio 编码规范工具 2.6 修改当前文件编码

我的 VisualStudio 插件工具支持修改文件编码,在开发的时候会遇到有逗比小伙伴上传文件使用的是 GBK 编码,他在代码里面使用字符串作为界面显示,于是在用户看到就是乱码 在 VisualStudio 2015 可以另存文件指定编码,而在 VisualStudio 2019 的时候就需要借助外部工具才能转换文件编码

win10 uwp 动画移动滑动条的滑块

堆栈网小伙伴问如何点击滑动条的时候,可以通过动画将滑块从原来的坐标移动到用户点击的坐标,同时用户拖动的时候不做动画 在后台代码添加两个事件,一个是按下,一个抬起,通过按下和抬起判断坐标可以知道用户是点击还是拖动。然后用上一个值和当前的值做动画就可以。

win10 uwp 如何将像素数组转 png 文件

堆栈的小伙伴好奇他有一个数组,数组里面是 BGRA 的像素,他需要将这个数组转换为 PNG 文件 在 UWP 可以使用 BitmapEncoder 将像素数组加密为文件

win10 uwp 修改图片质量压缩图片

本文告诉大家如何在 UWP 通过修改图片的质量减少图片大小,这个方法只支持输出 jpg 文件

UWP How to custom RichTextBlock right click menu

We can find the default RichTextBlock will show the copy and the select all menu when we right click it. If you think the default menu is too boring, try customizing the RichTextBlock right click menu.

win10 uwp 如何自定义 RichTextBlock 右键菜单

默认的 RichTextBlock 的邮件菜单是包含复制和全选,如果想要自定义菜单可以添加 ContextFlyout 属性

win10 uwp 鼠标移动到图片上切换图片

如果只是在后台代码判断鼠标是否移动到图片上,修改图片,那么实在简单,但是如果后台代码写多了,就会如下面的注释说的一样。如果只是在 xaml 写所有代码能否在鼠标移动到图片上自动修改图片?在 UWP 有一个好用的库 Behaviors 库支持绑定事件,于是在鼠标进入图片的时候触发动画修改图片,在鼠标在图片范围外的时候触发动画修改图片

win10 uwp 在 ItemsPanelTemplate 里面通过样式绑定 Orientation 显示方向

在 UWP 是不支持在 Setter 里面的 Value 进行绑定,如果想要在 ItemsPanelTemplate 里面绑定显示方向,那么需要通过附加属性的方法绑定。如果在后台代码定义了 Orientation 属性想要在 xaml 绑定到 ListView 的样式,可以尝试多创建一个帮助属性,用于在里面绑定

uwp ScrollViewer content out of panel when set the long width

I find a ununderstandable behavior in UWP. I make a content with a long width in ScrollViewer and the content will out of the panel.

在 Windows Defender 设置文件夹白名单提升 VisualStudio 编译速度

最近在使用 VisualStudio 编译的时候发现编译的速度下降了,原因是编译的时候会创建很多文件,微软自带的杀毒工具会扫描创建的文件,所以降低了编译速度

win10 uwp 使用 ScaleTransform 放大某个元素

本文告诉大家如何通过 ScaleTransform 放大元素 放大一个元素的方法有很多个,通过 ScaleTransform 放大是比较清真的

通过 frp 开启服务器打开本地的 ZeroNet 服务器外网访问

现在大多数的网站都需要有服务器,但是 ZeroNet 是无服务器的网络,可以在 ZeroNet 里面是否简单搭建自己的网站,同时不需要任何一个服务器。任何访问你的网站的小伙伴都将成为你的网站的服务器,每个人都可发布自己的网站而不需要服务器

win10 uwp 一张图说明水平对齐和垂直对齐

有小伙伴好奇 HorizontalAlignment 和 VerticalAlignment 是如何使用的,本文使用一张图简单说明了水平对齐和垂直对齐

win10 uwp 渲染原理 DirectComposition 渲染

本文来告诉大家一个新的技术DirectComposition,在 win7 之后(实际上是 vista),微软正在考虑一个新的渲染机制。

为何使用 DirectComposition

本文主要翻译Why use DirectComposition,介绍 DirectComposition 的功能和优点。

WPF 使用 SharpDX

本文告诉大家如何在 WPF 使用 SharpDX ,只是入门。

安装 Sureface Hub 系统 Windows 10 team PPIPro 系统

本文告诉大家如何安装这个系统

WPF 从零开始开发 dotnet Remoting 程序

本文告诉大家如何不使用框架,从零开始开发一个 dotnet remoting 程序

获取 Nuget 版本号

本文告诉大家通过命令行获取 Nuget 的版本号

win10 uwp 使用 LayoutTransformer

如果需要使用旋转,那么很容易把图片旋转的布局被裁剪。如果需要旋转的控件还在指定的 Grid 内,就需要使用布局的旋转。本文告诉大家如何使用 LayoutTransformer。需要知道,uwp是没有 LayoutTransformer ,这个类是仿照 wpf 的 LayoutTransformer 写的。

win10 uwp 在 VisualStudio 部署失败,找不到 Windows Phone 可能的原因

在我使用 VisualStudio 调试的时候,发现我插入了手机,但是 VisualStudio 在部署的时候找不到手机。 可能的原因是 手机禁用了连接,第二个原因是可能手机驱动没正确让 VisualStudio 找到手机

VisualStudio 扩展开发 获得输出窗口内容

本文告诉大家如何拿到 VisualStudio 输出窗口的内容

C# json 转 xml 字符串

本文告诉大家如何将 json 转 xml 或将 xml 转 json 字符串

C# double 好用的扩展

在很多代码需要使用数学计算,在用到 double 很难直接判断一个值是 0 或者 1 ,判断两个值相等。 本文提供一个数学扩展,让大家可以简单使用到 double 判断