已知在OpenXml有以下几种超链接 功能 说明 跳转页面 跳转某一页:ppaction://hlinksldjump跳转第一页:ppaction://hlinkshowjump?jump=firstslide跳转最后一页:ppaction://hlinkshowjump?jump=lastslid ...
前言 这是一篇很水的文章,没有任何技术含量,在 Github 已经有很多人对 Avalonia 的 OpenGL ES 支持进行了讨论,但是我还是想写一篇文章来记录一下我是如何在 Avalonia 中使用 OpenGL ES 的。 介绍 在介绍 Avalonia 和 OpenGL ES 之前,我们先 ...
概述:Cron表达式是一种强大的定时任务调度工具,通过配置不同字段实现灵活的时间规定。在.NET中,Quartz库提供了简便的方式配置Cron表达式,实现精准的定时任务调度。这种灵活性和可扩展性使得开发者能够根据需求轻松地制定和管理定时任务,例如每天备份系统日志或其他重要操作。 Cron表达式详解 ...
概述:本文介绍了在C#程序开发中如何利用自定义扩展方法测量代码执行时间。通过使用简单的Action委托,开发者可以轻松获取代码块的执行时间,帮助优化性能、验证算法效率以及监控系统性能。这种通用方法提供了一种便捷而有效的方式,有助于提高开发效率和代码质量。 在软件开发中,了解代码执行时间是优化程序性能 ...
在C#中使用SQL Server实现事务的ACID(原子性、一致性、隔离性、持久性)属性和使用数据库锁(悲观锁和乐观锁)时,你可以通过ADO.NET的SqlConnection和SqlTransaction类来实现。下面是一些示例和概念说明。 实现ACID事务 ACID属性是事务处理的四个基本特征, ...
一:背景 1. 讲故事 很多.NET开发者在学习高级调试的时候,使用sos的命令输出会发现这里也看不懂那里也看不懂,比如截图中的这位朋友。 .NET高级调试属于一个偏冷门的领域,国内可观测的资料比较少,所以很多东西需要你自己去探究源代码,然后用各种调试工具去验证,相关源代码如下: coreclr: ...
概述:WPF中的资源管理机制包括外部资源、窗体资源、全局资源和动态资源。通过这些资源,开发者能够在应用程序中有效地组织、重用样式和模板,实现灵活的设计和运行时更改。这四种资源类型分别适用于不同的应用场景,为WPF应用程序提供了强大的扩展性和可维护性。 在WPF(Windows Presentatio ...
概述:以上C#示例演示了如何使用SerialPort类实现串口数据接收。通过设置串口属性、定义数据接收事件处理程序,你可以轻松地打开串口、监听数据,并在事件处理程序中对接收到的数据进行处理。这提供了一个基本框架,可根据实际需求进行定制。 在C#中实现串口数据接收通常需要使用System.IO.Por ...
前言:在这里不进行概念性描述,能看到这篇文章说明你已经知道如何使用表达式树 执行 这里需要说明下表达式树是表示代码的数据结构,并不是经过编译且可执行的代码,如果想要执行由表达式树表示的 .NET 代码,必须将其转换为可执行的 IL 指令。这时候我们需要调用编译函数创建委托(Delegate),再执行 ...
在树莓派上学习C#和Linux: 配置SSH 官方文档:https://www.raspberrypi.com/documentation/computers/remote-access.html#ssh 运行命令行输出IP 在树莓派的控制台输入hostname -I 得到IP地址 也可以使用mDN ...
一:背景 1. 讲故事 过年喝了不少酒,脑子不灵光了,停了将近一个月没写博客,今天就当新年开工写一篇吧。 去年年初有位朋友找到我,说他们的系统会偶发性崩溃,在网上也发了不少帖子求助,没找到自己满意的答案,让我看看有没有什么线索,看样子这是一个牛皮藓的问题,既然对方有了dump,那就分析起来吧。 二: ...
好久不见,我又回来了。 给大家分享一个我最近使用c#代码操作ftp服务器的代码示例: 1 public abstract class FtpOperation 2 { 3 /// <summary> 4 /// FTP服务器地址 5 /// </summary> 6 private string f ...
Unity 默认可以序列化值类型, Serializable属性修饰的类型, 派生自UnityEngine.Object的类型, 通常这些类型已经足以供日常使用了. 但是有时我们希望在编辑器面板上序列化一个接口或者抽象类, 则需要用到 SerializeReference属性. 假定我们有一个接口I ...
概述:MVVM Toolkit是.NET平台的强大工具包,旨在简化MVVM应用程序开发。提供基础功能如ViewModelBase和RelayCommand,支持数据绑定和命令绑定,通过Messenger实现消息订阅发布。其高级功能包括ObservableObject和WeakEventListene ...
前言我个人对三维渲染领域的开发有着浓厚的兴趣,尽管并未在相关行业工作过,我的了解还很片面。去年,在与群友聊天时,他们推荐了一本《Unity Shader入门精要》,说适合像我这样想自学的新人,于是我打开了通往新世界的大门。这本书涵盖了很多基础的渲染知识,如光照、阴影、各种风格的渲染等等。对于有兴趣的 ...
概述:在C#多线程编程中,合理终止线程是关键挑战。通过标志位或CancellationToken,实现安全、协作式的线程终止,确保在适当时机终止线程而避免资源泄漏。 应用场景: 在C#多线程编程中,有时需要终止正在运行的线程,例如在用户取消操作、程序关闭等情况下。 思路: 线程终止通常涉及到合作式终 ...
internal class Program { static List<string> list=new List<string>() { "A","B","C","D","A","B","C","D" }; static string hiddenEle1 = string.Empty;//第一 ...
概述:MVVM是一种在WPF开发中广泛应用的设计模式,通过将应用程序分为模型、视图、和视图模型,实现了解耦、提高可维护性的目标。典型应用示例展示了如何通过XAML、ViewModel和数据绑定创建清晰、可测试的用户界面。 什么是MVVM? MVVM(Model-View-ViewModel)是一种用 ...
随着现代软件对性能和响应速度的要求越来越高,异步编程已经成为许多开发者必须掌握的技能。C# 提供了多种实现异步编程的方式,每种方式都有其特定的适用场景和优缺点。本文将详细介绍 C# 中实现异步编程的常用方式,帮助读者更好地理解并选择合适的异步编程方法。 一、Task 和 Task C# 5.0 引入 ...
MiniExcel简介 简单、高效避免OOM的.NET处理Excel查、写、填充数据工具。 目前主流框架大多需要将数据全载入到内存方便操作,但这会导致内存消耗问题,MiniExcel 尝试以 Stream 角度写底层算法逻辑,能让原本1000多MB占用降低到几MB,避免内存不够情况。 特点: 低内存 ...