刷新
记一次 .NET某上位机视觉程序 卡死分析

博主头像 一:背景 1. 讲故事 前段时间有位朋友找到我,说他的窗体程序在客户这边出现了卡死,让我帮忙看下怎么回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 为什么会卡死 窗体程序的卡死,入口门槛很低,后续往下分析就不一定了,不管怎么说先用 !clrsta ...

C# 开源教程带你轻松掌握数据结构与算法

博主头像 前言 在项目开发过程中,理解数据结构和算法如同掌握盖房子的秘诀。算法不仅能帮助我们编写高效、优质的代码,还能解决项目中遇到的各种难题。 给大家推荐一个支持C#的开源免费、新手友好的数据结构与算法入门教程:Hello算法。 项目介绍 《Hello Algo》是一本开源免费、新手友好的数据结构与算法入门 ...

.NET 多版本 WinForm 开源控件库 SunnyUI

博主头像 前言 给大家推荐一款开源的 Winform 控件库,可以帮助我们开发更加美观、漂亮的 WinForm 界面。 项目介绍 SunnyUI.NET 是一个基于 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 开源控件库,同时也提供了工具类库、扩展 ...

dotnet C# 警惕可空结构体的方法内部赋值无效

本文将记录一个 C# dotnet 里的一个稍微隐藏的行为,那就是如果有一个结构体存在某个的方法,此方法的作用是修改结构里面的字段或属性的值,那此时将会在可空的结构体调用此方法时,发现没有真正修改到可空结构体局部变量本身 ...

WPF 解决 SelectionTextBrush 设置无效问题

title: WPF 解决 SelectionTextBrush 设置无效问题 description: 本文告诉大家在 WPF 里面设置 SelectionTextBrush 无效的问题,可以通过 AppContext 的开关开启其行为 tags: WPF category: 如以下的代码,设置被 ...

在WinForm中使用全局异常捕获处理

博主头像 在WinForm中使用全局异常捕获处理 在WinForm应用程序中,全局异常捕获是确保程序稳定性的关键。通过在Program类的Main方法中设置全局异常处理,可以有效地捕获并处理未预见的异常,从而避免程序崩溃。 注册全局异常事件 [STAThread] static void Main() { / ...

[STAThread]特性

博主头像 [STAThread] 特性用于需要与 COM 组件交互的应用程序,尤其是依赖单线程模型(如 Windows Forms 应用程序)的组件。在 STA 模式下,线程拥有自己的消息循环,这对于处理用户界面和某些 COM 组件是必要的。 [STAThread] static void Main(stri ...

WinFrom项目结构

博主头像 示例项目结构 在 Visual Studio 中创建一个 WinForms 应用程序后,项目结构如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...

.NET 8 微软免费开源的 Blazor UI 组件库

博主头像 前言 .NET 8 的发布,微软推出了官方免费且开源的 Blazor UI 组件库 —— Fluent UI Blazor。 组件库提供了Web应用程序所需的工具,确保应用程序能够与 Microsoft 产品保持一致的外观和感觉。Fluent UI Blazor 不仅包含了对微软官方 Fluent ...

通过C#在Word中插入或删除分节符

博主头像 在Word中,分节符是一种强大的工具,用于将文档分成不同的部分,每个部分可以有独立的页面设置,如页边距、纸张方向、页眉和页脚等。正确使用分节符可以极大地提升文档的组织性和专业性,特别是在长文档中,需要在不同部分应用不同的样式时。本文将介绍如何使用一个免费的.NET库通过C#实现插入或删除Word分节 ...

CRUD最佳实践PasteForm及项目模板的制作视频,让重复的CRUD更加简单直接[附带源码和视频](三)

博主头像 关说不练假把式,在上一,二篇中介绍了我心目中的CRUD的样子 基于之前的理念,我开发了一个命名为PasteTemplate的项目,这个项目呢后续会转化成项目模板,转化成项目模板后,后续需要开发新的项目就可以基于这个模板创建,这样就不要copy一个旧的项目,然后删删删,改改改,重命名等操作了 强迫症, ...

<1···232425···50>