- 博客(121)
- 资源 (31)
- 收藏
- 关注
原创 WPF MediaPlayer获取网络视频流当前帧并展示图片完整范例
增加一个滑块控件,动态修改// 滑块值改变事件= null)本文通过WPF原生实现了网络视频流当前帧提取与图片展示是WPF原生媒体播放类,轻量无依赖,支持网络视频流,需配合完成无可视化画面的渲染;帧提取的核心是将视频帧渲染为位图,再转换为绑定到Image控件;必须使用实现定时帧提取,避免跨线程操作UI的异常;资源释放是关键,需在停止播放、窗口关闭时手动释放MediaPlayer,解除事件绑定,防止内存泄漏和进程残留;
2026-01-31 17:53:18
964
原创 Arduino安装ESP8266开发板完整指南(含超时/404问题终极解决方案)
网络稳定 → 选择「常规在线安装」,步骤简单高效;安装超时 → 优先「切换国内镜像源」,其次「延长超时时间」;链接404/多次超时 → 直接用「手动离线安装」,100%成功兜底。按以上方法操作,无论是新手还是有经验的开发者,都能快速完成Arduino与ESP8266的对接。若遇到其他问题,欢迎在评论区留言交流!
2026-01-23 11:30:55
740
原创 WPF DataGrid 全属性详解(分类整理+实用说明)
在 WPF 开发中,DataGrid 是展示和编辑表格数据的核心控件,其属性覆盖布局、数据绑定、交互、样式等多个维度。很多开发者在使用时容易混淆各类属性的作用,尤其是新手常因属性配置不当导致功能异常。本文将 DataGrid 所有核心属性按功能分类整理,包含继承属性和专属属性,附详细说明和使用场景,助力开发者快速上手、精准配置。
2026-01-22 15:18:37
658
原创 老版本Android源码在新版本IDE打开的常规报错及解决方案
老版本源码适配新版IDE的核心是版本兼容,优先统一AGP、Gradle、JDK的适配版本;高频报错集中在Manifest属性、依赖管理、变量定义三类,需按“先基础配置、后细节修复”的顺序解决;国内镜像仓库可大幅降低依赖下载失败概率,是迁移过程中的关键优化手段;所有修改完成后,需通过“Clean → Rebuild → 运行项目”验证适配效果,确保无编译/运行报错。
2026-01-22 14:29:04
836
原创 Android 25(API 25)+ JDK 17 环境搭建
Android 25 对应 Android 7.1.1 系统版本,JDK 17 是长期支持(LTS)版本,二者搭配需注意 Gradle、Android Gradle Plugin(AGP)的版本兼容性。本文将详细讲解环境搭建的完整步骤,帮助开发者快速完成基础开发环境配置。
2026-01-22 14:23:50
650
原创 基于C#实现斑马ZT411打印机TCP通讯与打印状态精准判定
本文分享了基于C#实现斑马ZT411打印机TCP通讯与打印状态判定的完整方案。核心内容包括:通过ZebraDesigner工具生成标准ZPL模板指令,解析关键字段作用;建立C#与ZT411的TCP连接,发送ZPL指令实现打印;利用~HS指令监控打印机状态,通过二进制编码解析实现精准状态判定。重点解决了指令生成、通讯无响应、状态查询不及时等工业场景中的常见问题,提供了可落地的技术实现方案,适用于条码标签打印等工业自动化场景。
2026-01-21 23:37:08
969
1
原创 C# 基于MemoryMappedFile实现进程间通信(服务端+客户端完整范例)
C# MemoryMappedFile进程通信摘要 本文介绍了使用C#的MemoryMappedFile实现高性能进程间通信的方法。核心要点包括: 技术优势:内存映射文件提供接近原生内存的读写性能,无需网络协议封装,代码简洁高效。 实现方案: 服务端创建命名内存映射文件并监听请求 客户端连接后写入数据并等待响应 使用Mutex保证多进程读写安全 代码结构: 共享常量类(Shared.cs)定义通信参数 服务端(Server.cs)循环监听并处理请求 客户端(Client.cs)发送请求获取响应 性能特点:适
2026-01-21 17:14:43
305
原创 【实战优化】WPF异步加载网络图片:从“卡到崩”到“秒级响应”的全程拆解
本文针对WPF异步加载网络图片的性能优化问题,从常见错误实现入手,分析同步HTTP请求、串行加载、线程安全等核心痛点。通过分步优化方案,首先实现基础异步化改造,包括使用HttpClient异步请求、BitmapImage冻结、UI线程安全更新等技术,解决了UI卡顿和线程异常问题。优化后代码采用Task异步模式,配合Dispatcher保证线程安全,并加入异常处理和默认图标兜底机制,显著提升了用户体验。最终实现了从同步阻塞50秒到异步流畅加载的转变,为后续进一步性能优化奠定了基础。
2025-12-19 15:01:28
734
原创 Prism框架中`IConfirmNavigationRequest` 导航
Prism框架中,IConfirmNavigationRequest接口是导航控制的核心,继承自INavigationAware。它提供了四个关键方法:IsNavigationTarget决定是否复用ViewModel实例;OnNavigatedTo处理页面初始化;OnNavigatedFrom执行资源清理;ConfirmNavigationRequest实现导航拦截确认。这些方法共同构成了Prism导航的生命周期,允许开发者精细控制导航行为,包括参数传递、实例复用、离开确认和资源管理等场景。使用时需注意异
2025-12-18 15:30:08
682
原创 农夫与蛇(经典寓言故事 + 开发场景延伸)
摘要: 经典寓言《农夫与蛇》警示善良需有底线,对本质危险的对象过度宽容会自食恶果。在开发场景中,类似问题频现: 过度兼容低版本API:牺牲新特性导致崩溃,应分版本适配,设定最低兼容标准。 滥用第三方库:引入不可控依赖引发安全问题,需优选轻量、主流库并严格审核。 忽视权限安全:简化权限逻辑易被恶意利用,应动态申请并遵循最小化原则。 C#/.NET忽略null校验:未防御空值导致崩溃,需主动校验并抛出明确异常。 核心原则:开发中的“善良”需理性,兼容性、便捷性不可突破安全与稳定性底线,通过版本控制、依赖管理、权
2025-12-04 15:50:08
1204
原创 【零基础入门】ASP.NET Core快速搭建第一个Web应用
一、为什么选择ASP.NET Core?跨平台支持:可在Windows/macOS/Linux系统运行高性能:比传统ASP.NET框架快10倍以上开源生态:活跃的开发者社区和丰富的NuGet包云原生支持:完美适配Docker和Kubernetes部署二、开发环境准备(Windows为例)安装 .NET 8 SDK下载 Visual Studio 2022 Community版安装时勾选工作负载:ASP.NET和Web开发.NET桌面开发。
2025-04-28 21:29:51
1353
原创 LabVIEW程序如何转为软著代码?图形化编程的软著申请全攻略
摘要:对于使用LabVIEW开发的程序,申请软件著作权(软著)时最大的挑战是如何将图形化代码转化为符合登记要求的“源代码”材料。本文提供一套完整的解决方案,涵盖材料准备、格式优化、实操技巧和避坑指南。一、为什么LabVIEW软著申请需要特殊处理?LabVIEW采用图形化编程(G语言),其核心代码是.vi文件中的后面板(Block Diagram),这与传统文本代码有本质区别。软著登记要求提交连续30页代码(不足60页则提交全部),每页50行。因此需要将图形化逻辑转化为可打印的文本化描述。
2025-04-24 20:57:53
1497
原创 一篇文章学会开发第一个ASP.NET网页
*开发环境:Visual Studio 2022 + ASP.NET Core 6.0*一、开发环境准备1.1 安装必备工具验证安装:命令行执行 dotnet --version 显示6.0.x版本1.2 创建新项目
2025-04-23 21:11:29
888
原创 一篇文章带你用LabVIEW视觉实现人脸识别功能
总结LabVIEW结合YuNet与SFace,可快速搭建高精度人脸识别系统,适用于工业检测、智能门禁等场景。通过调整参数与优化流程,能显著提升系统鲁棒性。学习资源课程推荐《龙哥手把手学LabVIEW人脸识别》:涵盖dll封装与特征匹配实战。腾讯课堂《LabVIEW深度学习实战》:集成传统算法与AI模型。立即行动:从调试摄像头、实现第一个“人脸打卡”项目开始,探索LabVIEW视觉的无限可能!参考资料LabVIEW+OpenCV人脸识别系统搭建指南YuNet模型GitHub仓库SFace论文与模型下载。
2025-04-22 20:21:20
1278
原创 一篇文章带你认识LabVIEW视觉:从入门到实战
LabVIEW视觉是机器视觉开发的利器,尤其适合自动化、检测领域的快速原型开发。通过系统学习基础知识、多实践项目案例,并结合优质资源(如龙哥系列课程),即使是零基础用户也能在短期内掌握核心技能。未来,随着深度学习与LabVIEW的深度融合,其在工业智能化中的应用将更加广泛。立即行动:从调试一个摄像头、完成第一个“找硬币”项目开始,开启你的LabVIEW视觉之旅吧!参考资料LabVIEW视觉助手案例详解龙哥LabVIEW视觉课程。
2025-04-22 20:15:26
1156
原创 手把手教你编写高复用性WPF自定义控件
在企业级WPF开发中,当遇到以下场景时自定义控件将成为终极解决方案多个项目需要复用同一套交互逻辑现有控件无法满足特殊业务需求(如带验证的日期选择器)需要统一维护UI样式规范实现复杂动画交互效果真实案例:某物流系统要求所有输入框具备自动清空功能,通过自定义控件,开发效率提升70%"Icon",通过本文,您已经掌握了WPF自定义控件的完整开发流程。建议结合企业实际需求,从简单控件开始实践。遇到问题欢迎在评论区交流,点击关注获取更多WPF高级技巧!
2025-04-18 20:29:43
583
原创 C#如何动态生成实体类?5种方法详解与实战演示
本文介绍C#中动态生成实体类的5种实用方法,涵盖T4模板、CodeDOM、Roslyn、反射和Emit等技术,通过真实代码示例帮助开发者应对不同场景需求。
2025-04-18 19:59:34
1056
原创 一篇文章学会C#委托、值改变事件
在C#开发中,委托(Delegate)和事件(Event)是构建松耦合应用程序的核心机制。本文将通过通俗易懂的讲解和实用示例,带您彻底掌握这两个重要概念,并重点解析值改变事件的实现方式。掌握委托和事件需要理解三个层次:语法层面:声明、订阅、触发设计层面:解耦生产者与消费者架构层面:实现观察者模式的基础推荐阅读《C#高级编程(第12版)》委托与事件章节觉得有帮助?
2025-04-15 22:26:30
500
原创 一篇文章全面掌握NI Circuit Design Suite:从安装到高阶应用
在电子电路设计与仿真领域,(简称CDS)是工程师和教育工作者广泛使用的专业工具。它集成了Multisim仿真与Ultiboard PCB设计两大核心模块,支持从电路原型设计到PCB布局的全流程开发。本文将从零基础安装指南到实战应用技巧,带你深度解锁这一工具的强大功能!NI Circuit Design Suite作为电子设计领域的"瑞士军刀",既能满足教学演示需求,又能胜任复杂工业级电路开发。建议读者结合官方教程()进行系统学习。
2025-04-12 22:19:04
1414
原创 一篇文章带你玩懂C#的反射
在C#开发中,反射(Reflection) 是一个强大却常被误解的"黑科技"。它能让程序在运行时动态获取类型信息、操作对象和调用方法,是实现插件化开发、依赖注入等高级功能的核心技术。本文将通过实战代码+图解,带你彻底掌握反射的使用技巧!反射是.NET框架提供的元数据(Metadata) 处理机制,通过System.Reflection命名空间实现。简单来说:它能让程序在运行时像照镜子一样,查看并操作自身的结构和行为。反射的核心能力动态获取类型信息(类/接口/结构体)1.动态创建对象实例。
2025-04-12 21:49:02
547
原创 CommunityToolkit.Mvvm----配置
并且可在任何运行时上使用:.NET Native、.NET Core、.NET Framework 或 Mono。API 图面在任何情况下都相同,因此非常适合生成共享库。在这两种情况下,公共 API 图面都是相同的,因此 NuGet 将始终解析包的最佳版本,使用者无需担心有哪些 API 可以在其平台上使用的问题。CommunityToolkit.Mvvm 包(又名 MVVM 工具包,以前称为 Microsoft.Toolkit.Mvvm)是一个现代、快速和模块化的 MVVM 库。至此,初步配置使用结束。
2024-03-31 22:40:25
2844
原创 WPF上使用MaterialDesign框架---下载与配置
Material Design语言的一些重要功能包括 系统字体Roboto的升级版本 ,同时颜色更鲜艳,动画效果更突出。谷歌的想法是让谷歌平台上的开发者掌握这个新框架,从而让所有应用就有统一的外观,就像是苹果向开发者提出的设计原则一样。大家可能还会记得,最近曾看到过有关这些变动的文章, 有些博客 已经掌握了外泄截屏,显示经过了重新设计的Gmail,界面更干净、更简约。在安卓平台上,这种新界面被称为Material,支持各种新动画效果,具有内置的实时UI阴影,以及可在不同屏幕之间切换的hero元素。
2024-03-31 22:19:31
3035
原创 WPF 自定义ComboBox下拉颜色控件
WPF 自定义ComboBox下拉颜色控件。4.赋值给ComboBox。6.字符串转换颜色类型。3.获取所有颜色名称。
2023-03-04 00:03:29
2038
原创 KEPServerEX软件安装
1. KEPServerEX软件安装与激活KEPServerEX安装时关闭360、电脑管家等软件,直接下一步就可以完成,如下组图所示:
2023-02-07 21:51:22
2227
转载 C#正则验证大全 Regex.IsMatch()正则表达式验证
需要引入命名空间 using System.Text.RegularExpressions;C#正则验证大全 Regex.IsMatch()正则表达式验证。
2022-12-13 15:59:10
607
原创 基于LabVIEW的计时器
**前言:** 最近有人问我,怎么实现一个计时器计时,可以做到启动、停止、重新开始等功能,好久没关于LABVIEW的博文,借这个写个计时器相关内容。**一、Labview时间计时器介绍:**这里采用时间计时器计算耗时,具体位置如下图:
2022-05-29 22:11:46
15535
1
原创 现在是2022年,分享一份《2020年的个人总结》
2019年底,我辞去了深圳工作,来到现在的城市,现在的这家公司。我的业余时间和深圳工作相比还是很充足的,为了更好的提升自己,我开始学习物联网,学习物联网的原因是因为我个人觉得,物联网是一个大趋势,不管是智能家居还是智能什么都离不开物联网的存在,最简单的想法就是通过移动APP远程控制实现一系列功能。
2022-05-05 15:23:29
284
原创 C#访问MySQL(二):数据插入与修改(增改)
前面说了数据库的连接查询,现在说数据库的增删改。这里引入一个数据库的实体类,就是将当前数据库的某一个表里面所有字段写成实体类,如下:
2022-05-02 21:17:54
2084
原创 C# DataTable.Select()根据条件筛选数据
很多时候我们获取到一个表的时候需要根据表的包含的队列去筛选内容,一般来说可能想到的就是遍历整个表的内容进行条件筛选,但是这种方式增加了代码量且易出错,DataTable.Select()就可以解决这一问题。
2022-04-28 19:37:43
11446
原创 C#textbox控件区分扫码枪输入和键盘输入
一般我们在某个UI界面输入内容的时候又不想人为的去键盘输入,这个时候就需要区分键盘输入和扫码枪的输入,从而禁止人为键盘输入内容,只能使用扫码枪扫码输入。就目前来说这种直插式扫码枪输入和键盘输入几乎一个道理,从本质上很难做区分。那就只能从输入过程来做判别,如下是我的个人见解。
2022-04-25 18:12:44
3309
原创 C#TimeSpan时间差转换成分钟和秒数
public Form1() { InitializeComponent(); aa = DateTime.Now.ToString(); } string aa; private void button1_Click(object sender, EventArgs e) { double bb = (DateTime.Now - Date...
2021-12-09 18:06:46
7019
原创 Arduino开发ESP8266——安装与配置ESP8266开发板
一、安装Arduino1.下载安装包:点击打开2.安装:直接点击下一步直至安装完成。如下图所示:二、下载ESP8266开发板库:在这面填写ESP8266开发板地址:http://arduino.esp8266.com/stable/package_esp8266com_index.json,保存。三、设置开发板:...
2021-11-07 22:30:41
7333
1
原创 WPF_MahApps.Metro界面主题使用
一、创建WPF项目:二、下载MahApps.Metro:三、修改MainWindow.xaml1.添加一栏: xmlns:mah="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"2.修改开头为:<mah:MetroWindow x:Class="demo.MainWindow"结尾也要修改。四、修改MainWindow.xalm.cs1.修改窗体继承:namespace
2021-09-08 13:29:15
1406
原创 QT控件----tableWidget的常规使用
一、前言:正常开发GUI会用到的一个控件就是列表,这里介绍的就是QT其中一个列表控件:tableWidget。需要实现功能:表头设置、内容显示、新增行数据、删除行数据及一些属性的配置。二、tableWidget属性:1、QHeaderView::QHeaderView(Qt::Orientation orientation,QWidget * parent = 0) 使用给定的方向和父对象,创建。2、QHeaderView::~QHeaderView()析构函数3、int QHeaderView
2021-06-18 19:24:04
11993
原创 C#欢迎画面显示程序启动进度条,并自动打开主界面
void bw_DoWork(object sender, DoWorkEventArgs e) { // 这里是后台线程, 是在另一个线程上完成的 // 这里是真正做事的工作线程 // 可以在这里做一些费时的,复杂的操作 for (int i = 0; i < 100; i++) { Thre...
2021-06-18 18:31:36
4450
基于C#视频播放器,可以播放网络视频和本地视频,这是可以运行的源码哦。。。。。。。
2022-06-10
NIPackageManager18.5.1.exe
2020-02-21
基于LabVIEW下语音识别自动联网查询天气预报播报.zip
2020-02-22
accessdatabaseengine.rar
2020-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅