因为我现在需要将uint作为字典的键进行存储,这就需要编写一个GetHashCode(),那么最好的办法就是直接把它的二进制值拷贝为1个int。 这里给出我的int和uint之间的直接拷贝方法: int x; uint y; y = BitConverter.ToUInt32(BitConverte ...
自2024年11月被裁后,就慢慢有了和朋友一起创业的想法,直到今年3月正式启动。2025年3月17号租了办公室,在上海嘉定南翔,100多平的商用写字楼。不自己亲身体验一把租办公室的经历还不知道,这几年大环境不好,写字楼的空置率极高,租金也降了不少。但还是贵,贵,贵,重要的事三遍......,4月从搬 ...
实际开发中,我们可能需要自己写一些自定义的分页设计,所以我们需要学会自己封装一个可以直接套用的分页控件,以下就是一个完整的用例,话不多说,我们直接上代码实现。 1.新建一个分页控件View:Pagination2Control 1.1 UI展示如下 <UserControl x:Class="WPF ...
实际开发中,我们可能需要自己写一些自定义的分页设计,所以我们需要学会自己封装一个可以直接套用的分页控件,以下就是一个完整的用例,话不多说,我们直接上代码实现。 1.新建一个分页控件View:PaginationControl 1.1 UI展示如下 <UserControl x:Class="WPFD ...
一、前言 上节课已经抽象出来了形状和连线,但是没解决程序复用的问题:现在所有的代码是写在窗口中的,如果想在其它程序想实现流程图,只能重新写代码或者复制粘贴代码,没办法简单复用,而且也无法保证功能的完整性和及时性。所以我们本节就来看一下,如何独立出一张“画布”控件,来解决此问题。 相信看完的你,一定会 ...
作者: zyl910 最近有读者反馈“部分网站打不开”。于是我修正了这一问题,发布了v1.2.1版。 一、变更说明 v1.2.1的变更说明—— 解决了部分网站无法打开的问题. 改进 TLS 的版本兼容性. 忽略HTTPS证书检查, 用于支持证书无效的网站. 二、使用介绍 用法与先前版本相同. 例如可 ...
实际开发中难免需要自己重写GataGrid样式,以下是我写的一个新样式: 1.view界面样式如下: <Window x:Class="WPFDemoMVVM.View.DataGridView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml ...
在wpf开发中,你会经常遇到一些需要验证填写内容不能为空,或者是其他的一些规则,比如正则表达式等,以下就是一个示例,同时提供了很多种方式。 1.方式1.使用第三方库:ValueConverters 第一步:在项目中nuget引用ValueConverters 第二步:新建View:ValueConv ...
在实际的WPF开发过程中,你可能需要自定义ComBox的样式,重写的样式可能不出效果,背景色无法正常显示,或者是显示的内容出现白色遮罩,如以下的效果: 1.ComBox样式如下: <Style TargetType="TextBlock" x:Key="BaseTextBlockStyle"> <S ...
一、前言 前面的课程我们实现了两种形状:矩形、圆形,在第4章的时候就会发现,仅增加了个新形状,代码量及判断逻辑就翻倍不止,异常繁琐,可维护性很差,更没有扩展性可言。我们本节课就来解决这一点,解决的方法也很简单经典:抽象! 相信看完的你,一定会有所收获! 本文地址:https://www.cnblog ...
假设我们开发了一个C#脚本编辑器,利用Roslyn去执行用户所编写的脚本。这时候,如果用户想要引用一个nuget包,应该如何实现呢? 我们想要引用nuget包的话,只要能得到nuget包及其依赖包的所有程序集和资源文件就可以了。如何引用程序集,可以看这一篇:使用Roslyn脚本化C#时如何调用不包含 ...
1 IsNullOrEmpty()和IsNullOrWhiteSpace()的区别? IsNullOrEmpty是一个静态方法,它用于检查一个字符串是否为空或者为null。 public static bool IsNullOrEmpty(string value); IsNullOrWhiteSp ...
一:背景 1. 讲故事 这篇文章起源于和一家 .NET公司 开线上会议时,提出的一个场景问题,程序出现了非托管内存暴涨,这些非托管内存关联的对象都囤积在 终结器队列 中,很显然这是代码中没用 using 及时释放引发的,而这块代码又是第三方组件,你想加也加不了,所以提出了一个设想:能不能设法干预 终 ...
从C#9开始,可以使用record关键字来定义一个具有不可变属性的引用类型,编译器会为该类型生成大量的模板代码。C#10以后,record struct用来定义值类型,record class或record用来定义引用类型。 record(C# reference)这篇官方的文档中,介绍了recor ...
一、前言 前面的课程我们实现了矩形、圆形的拖动,以及不同形状间的连线,在实现的过程中,很多读者都发现并提出来了存在显示质量差有锯齿、拖动不流畅还闪烁等问题,作为承上启下的一节课程,我们本节就来看一上如何解决这些问题。 相信看完的你,一定会有所收获! 本文地址:https://www.cnblogs. ...
芯片测试中 检查 LDO 电压(Low Dropout Regulator Voltage) 是一个非常关键的环节,用于验证芯片内部或外部 LDO 是否正常输出稳定的电压,为核心模块提供可靠电源。 1.什么是 LDO 电压测试 LDO(低压差线性稳压器) 通常存在于芯片内部,用于将外部较高电压(如 ...
一:背景 1. 讲故事 本篇是系列的最后一篇,我们从跨平台部署和自定义诊断的角度跟大家聊一聊 dottrace,希望对大家有所启发。 二:跨平台和自定义诊断 1. 如何跨平台诊断分析 如果 dottrace 只能在 windows 平台上跑,那确实不值得写一个系列,目前它可以横跨三大平台(Windo ...
泛型(Generics)是C#中的一种强大的强类型扩展机制,在申明时用“占位符”类型参数“T”定义一个“模板类型”,比较类似于C++中的模板。泛型在使用时指定具体的T类型,从而方便的封装、复用代码,提高类型的安全性,减少类型转换和装箱。 ...
一:背景 1. 讲故事 现如今的很多代码都是awaitasync+Task的方式,对它们进行性能洞察非常有必要,awaitasync 本质上就是将状态机塞入到 Task 的 m_continuationObject 延续字段上,和 ContinueWith 没有本质区别,这一篇我们就来聊一聊。 二: ...
一:背景 1. 讲故事 分析托管和非托管内存暴涨,很多人潜意识里都会想到抓dump上windbg分析,但我说可以用dottrace同样分析出来,是不是听起来有点让人惊讶,哈哈,其实很正常,它是另辟蹊径采用底层的ETW机制,即开启 windows 底层日志,所以 dottrace 可以做,官方血统的 ...