摘要:
开发环境:VS2022 + Winform(.Net Framework 4.6.1),Winform项目A,依赖类库B。 第一步,通过Nuget安装Obfuscar。 第二步,创建obfuscar.xml文件,设置为“如果较新则复制”,其内容如下: <?xml version='1.0'?> <O 阅读全文
摘要:
ChatGPT作为基于AI的聊天工具,其用途涉及到很多方面,个人认为其最大的用途莫过于作为多种行业的知识库,并能够通过AI技术给出特定行业技术的参考实现,是一个功能强大的知识库、搜索引擎。鉴于此,我基于.Net技术栈制作了ChatGPT搜索助手,其架构如下所示: ChatGPT搜索助手包含3部分内容 阅读全文
摘要:
本文展示了如何使用MathNet.Numerics对离散点进行曲线拟合,计算其R^2值,并基于Winform使用SkiaSharp.Views.WindowsForms绘制曲线及离散点,上述组件可从NuGet获取。 1、曲线拟合 使用Fit.Polynomial方法获取拟合后的多项式系数数组,其参数 阅读全文
摘要:
FFmpeg通过控制台命令可以方便地录制USB摄像头和屏幕,本文使用C#中的Process类调用FFmpeg命令,并通过获取控制台输出参数实现录制视频的完整功能。 Gitee完整代码:FFmpegWrappedSharpRecorder。 1、获取设备列表 FFmpeg命令: ffmpeg.exe 阅读全文
摘要:
在WPF中可以使用LibVLCSharp.WinForms、Emgu.CV组件直接播放RTSP流。 1、LibVLCSharp.WinForms (1) 引入NuGet包 LibVLCSharp.WinForms。 (2) 准备工作 public VlcVideoControl() { Initia 阅读全文
摘要:
在WPF中可以使用LibVLCSharp.WPF、Vlc.DotNet.Wpf组件直接播放RTSP流,此外还可以通过LibVLCSharp + SkiaSharp的方式将VLC视频流通过WriteableBitmap的方式关联到Image对象。 1、LibVLCSharp.WPF 使用VideoVi 阅读全文
摘要:
C#使用Enum.GetValues<TEnum>()方法获取枚举数组集合TEnum[],基于此可使用枚举的所有类型作为下拉框等控件的数据源使用。 1、枚举定义 internal enum IconResolution { [Description("16*16")] Width16 = 0, [D 阅读全文
摘要:
1、打开任务计划程序 右键“此电脑”,选择“管理”,进入“计算机管理”页面。点击“系统工具”中的“任务计划程序”。 2、创建任务 在“任务计划任务”面板右侧,点击“创建任务”,弹出创建任务窗口。 2.1 常规设置 设置名称:测试任务,选择“只在用户登录时运行”,勾选“使用最高权限运行”。 2.2 触 阅读全文
摘要:
Winform将控件保存为图片比较简单,因为Control类本身就有DrawToBitmap方法,可以将控件本身输出到图片中。 此外,还可以通过Graphics类的CopyFromScreen方法将屏幕的指定区域拷贝到指定位图中,只是这种方式对窗口类比较适用,而且会保留窗口的阴影部分,因此对于截取控 阅读全文
摘要:
/// <summary> /// 保存控件到图片 /// </summary> /// <param name="element">控件对象</param> /// <param name="fileName">文件名</param> /// <param name="dpi">DPI</para 阅读全文
摘要:
1、问题描述 DataGrid列表中添加删除按钮,点击后执行下述操作: ModelList.Remove(item); 这时候会有XAML绑定失败错误: 严重性 计数 数据上下文 绑定路径 目标 目标类型 说明 文件 行 项目 错误 12 null SelectionUnit DataGridCel 阅读全文
摘要:
在WPF中实现区域拖动的思路主要是,对鼠标按下、弹起、移动事件进行处理:鼠标按下时标记为可以移动并记录初始位置信息,鼠标弹起时标记不可以移动,鼠标移动过程中如果界面元素可以移动就动态设置相关位置。具体而言,需要处理的事件为:PreviewMouseLeftButtonDown、PreviewMous 阅读全文
摘要:
WPF可通过引用System.Windows.Forms来使用Screen.AllScreens获取屏幕信息,但是Screen.AllScreens获取的屏幕信息和物理屏幕有关,在Windows系统设置多屏幕之后会获取意想不到的屏幕位置,导致出现错误。下面先讲述如何引用System.Windows. 阅读全文
摘要:
SerialPortStream是一个跨平台的串口类库,可以运行在Windows和Linux系统上。直接将其部署在Linux上会抛出DllNotFoundException异常,其内容为“Unable to load shared library 'libnserial.so.1' or one o 阅读全文
摘要:
远程连接阿里云的MySQL参见《远程连接Ubuntu中的MySQL》。 要想修改阿里云中MySQL的密码(例如654321),可以先远程登录阿里云Ubuntu系统,然后登录MySQL: mysql -uroot -p 输入密码后,设置新密码并刷新权限: set password for root@l 阅读全文