摘要:
在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 阅读全文
摘要:
最近在做动态刷新COM串口列表的小功能,发现在UI线程异步处理ComboBox数据源后,UI无法即时刷新的问题。调试代码发现数据源是改变了的,但是无意中使用另外一种方式却能够有很好的效果,原因暂时未知。 问题解决方法:使用SelectedIndex代替SelectedValue,参考《I cant 阅读全文
摘要:
本文开发环境为:VS2019 + .Net5 Console App。 使用C#获取树莓派GPIO数据需要安装System.Device.Gpio包,在NuGet中搜索即可找到;DTH11温湿度传感器通过GPIO接口连接在树莓派相关引脚,其数据协议可在购买传感器时获取。在.Net5中获取DTH11温 阅读全文
摘要:
1、引用NLog组件 通过NuGet安装NLog、NLog.Web.AspNetCore包。 2、NLog配置 在项目中添加NLog.config文件,将其“生成操作”属性设置为“内容”,“复制到输出目录”属性设置为“如果较新则复制”,配置信息参见注释: <?xml version="1.0" en 阅读全文
摘要:
.NET中,控制台程序、Winform、WPF使用NLog的方式相同,本文通过.NET5控制台程序说明如何使用NLog组件。 1、引用NLog组件 下面2种方法都可以引用NLog组件: (1) 通过NuGet安装NLog包。 (2) 直接引用相应版本的NLog.dll。 2、NLog配置 在项目中添 阅读全文
摘要:
本文环境为.Net5 + ASP.Net Core Web API + EFCore 5.0.12 + MySQL 5,介绍了使用EFCore开启数据库连接池的2种方法,以及它们之间的区别。 在实现了自己的DbContext之后,需要在Startup.cs的ConfigureServices方法中注 阅读全文
摘要:
使用SuperSocket做WebSocket服务器开发需要引用包SuperSocket.WebSocket.Server,本文简称SuperWebScoket。 本文环境为.Net5 + ASP.Net Core Web API + SuperSocket.WebSocket.Server 2.0 阅读全文
摘要:
本文开发环境为VS2019+.Net5(.Net Core),使用VS发布项目在目标操作系统中运行,目标运行时为win-x86,发布配置不再赘述,直接记录在x86和x64环境的Win7系统中运行WPF程序的步骤。 一、独立部署模式 1、32位Win7 (1) 安装SP1更新包 windows6.1- 阅读全文
摘要:
UIElement.IsHitTestVisible属性可以设置WPF元素是否响应点击等交互事件,利用该属性可实现禁止选中DataGrid行的效果。 参考资料:禁用在WPF DataGrid中的选择 方法1:屏蔽DataGrid点击效果 该方法禁用了DataGrid所有交互事件,包含行滚动。 <Da 阅读全文
摘要:
WPF中通过System.Windows.Forms.Application.Restart方法可以实现软件重启,处理好重启条件就能实现预期的重启效果。 重启条件可以存储在Properties.Settings中,也可以存在于xml等配置文件中,甚至可以存在于SQLite等数据库中,在需要重启的时候 阅读全文
摘要:
本文在MVVM模式先实现了基于HandyControl的DataGrid多选,同时展示了为DataGrid单元格显示不同颜色的方法,开发环境为:WPF + Prism + HandyControl。 1、添加多选列 <DataGridTemplateColumn Width="Auto"> <Dat 阅读全文
摘要:
使用Navicat for MySQL可以方便地在Windows上连接Ubuntu中的MySQL,但是MySQL默认是不允许远程连接的,会提示10061错误,这就需要设置MySQL配置文件并使用SQL语句开启相应的权限才可以远程访问MySQL。 本文的MySQL版本是5.7.29,Ubuntu版本是 阅读全文