自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 Winform中DataGridView控件的属性设置

非运行时看有效,运行时则无效,除了EnableHeadersVisualStyles属性设置为false之外,还有可能是因为datagridview控件放在panel或其它容器内导致,因为外部容器有个默认字体样式,嵌入在内部的datagridview控件会受到外部容器的影响,显示为容器的默认字体,只需将外部容器的字体样式和datagridview统一就可以了。

2024-04-23 13:32:21 1830

原创 一文说清C#的快捷键

每个C#初学者都应该经历过这样的情形:一次偶然的机会,看到别人只输入prop,然后就快速地写出了完整的属性代码,感到很神奇。然后,我们厚着脸皮问别人,别人会告诉你,输入prop,接着连续按两个Tab,就可以实现,你尝试了,发现确实好用。在后面的学习过程中,我们慢慢发现for、foreach、switch也都有类似的功能。我们打开Visual Studio,创建一个简单的控制台项目,然后在菜单栏中的。我们似乎有点明白了,这些快捷代码有个专业术语叫做代码片段,英文名称。我们看到了我们熟悉的。

2024-04-11 17:42:14 187

原创 几道C#面试题

选择几道主流面试题,让大家自我检验一下,理论与实践相结合,才能更容易拿到高薪。如何在.NET中做deep copy?1)使用序列化反序列化对象实现深度克隆2)使用反射实现深度克隆。

2024-04-11 17:26:14 727

原创 推荐7个工具网站,你要吗?

疫情期间出来的一款远程桌面软件,我也是从它刚出来就开始用,一直使用,都挺方便,个人版免费使用,专业版费用也不是很高,但是值得吐槽的是,好像免费版不支持文件复制粘贴了。这里说个小插曲,之前使用遇到过一次找不到文件的情况,他们的运营立马联系我,帮我解决了问题,其实是我的问题,因为不小心注册了两个账号,文件在另一个账号里。这是官网的一段说明,可能有的小伙伴注意过,我一直在尝试不同的思维导图软件,但是要么付费,要么效果无法满足我的要求,直到看到它。官方链接:https://www.todesk.com/

2024-04-11 17:14:52 721

原创 ModbusTCP协议报文详细分析

保持寄存器,0对应40001。发送报文含义:预置服务器1号从站多个线圈的值,线圈地址为0x0013=19,对应地址为00020,线圈数为0x0A=10,写入值为0xCD00,即预置1号从站线圈00020-00027=0xCD=1100 1101,00028-00029=0x00=0000 0000。发送报文含义:读取服务器1号从站输出线圈,起始地址为0x13=19,对应地址为00020,线圈数量为0x1B=27,即读取1号从站输出线圈,地址从00020-00046,共27个线圈的状态值。

2024-04-11 16:50:22 1696

原创 WinForm实现管理员权限运行的三种方式

相信大家都遇到过这种情况,我们的软件运行时,如果涉及到文件或者数据库操作的时候,可能会提示权限不足。一种比较简单的办法,就是右击以管理员权限运行,但是每次这么操作,又会比较麻烦,有没有什么更好的办法呢?思路很简单,就是在Program.cs入口处判断当前是不是管理员权限,如果是,则不做其他处理,如果不是,改成管理员权限。右击exe程序文件,在弹出的属性对话框中,兼容性选项中,勾选“以管理员身份运行此程序”即可。//如果是管理员,则直接运行。//判断当前登录用户是否为管理员。/// 应用程序的主入口点。

2024-04-11 16:22:16 1206

原创 C#实现USB插拔检测

MessageBox.Show("判断检测USB插入电脑");MessageBox.Show(""判断检测USB拔出电脑");传统的方式是不断地通过SerialPort.GetPortNames方法获取所有串口,判断是否有变化。但是更合适的方式,应该是通过Windows消息来实现。最近有朋友咨询,如何实现串口设备的插拔检测。#region 检测USB插拔。

2024-04-11 15:56:52 538

原创 如何使用UaExpert访问S7-1500的OPC UA服务器?

我们介绍了如何使用S7-1500的OPC UA服务器功能,今天这篇文章给大家介绍下如何使用OPC UA客户端软件——UaExpert通过OPC UA协议访问S7-1500的数据。成功连接后,会在左侧【Address Space】显示PLC的相关信息,比如:全局数据块、背景数据块、位存储区地址等,甚至PLC的运行状态,订货号等都可以查询。服务器添加完成后,在左侧项目树的【Servers】会显示相关信息,此时服务器尚未连接。在Windows环境下,直接双击运行软件安装,一路单击【Next】即可完成。

2024-04-11 15:50:41 716

原创 理解并使用S7-1500的OPC UA服务器功能

它实体上可以是西门子的PLC、三菱的、AB的或者其它厂家的控制器,但它隐藏了其内部的细节,而提供统一的OPC UA数据接口,用户可以通过该接口,按照OPC UA的架构对数据进行读写,而不需要考虑其背后是西门子的还是三菱的PLC;关于S7-1500的OPC UA服务器功能就先介绍到这里,下一篇文章介绍如何通过OPC UA客户端软件——UaExpert来访问该OPC UA服务器。二、OPC UA客户端是数据的获取方,它通过标准的OPC UA接口,去读写OPC UA 服务器的数据;2、设置OPC UA的选项;

2024-04-11 15:38:11 2081

原创 西门子PLC的几种通讯方式

串口通信的优势在于简单、成本低,但是劣势也非常明显,就是传输效率低。因为PLC大多数是基于存储区的,每个地址肯定是隶属于某个存储区,大家都知道西门子PLC自带的存储区有I区、Q区、M区、T区、C区,但是对于常用的DB存储区是没有的,需要自己去创建,也就意味着,如果你要读取DB地址,必须要提前创建好DB存储区,除此以外,DB存储区创建之后,默认是没有字节的,需要自己一个个添加变量,才能形成有效存储区,因此一个DB存储区的范围是有限并且可见的(可以通过偏移量看出来)。如果希望通过标签通信,可以采用OPCUA。

2024-04-11 15:21:36 746

原创 各品牌PLC与Modbus地址对应关系

Y元件支持Modbus之01、05、15功能码;D元件支持Modbus之03、06、16功能码。D元件支持Modbus之03、06、16功能码。Y元件支持Modbus之01、05、15功能码;Y元件支持Modbus之01、05、15功能码;D元件支持Modbus之03、06、16功能码。D元件支持Modbus之03、06、16功能码。D元件支持Modbus之03、06、16功能码。D元件支持Modbus之03、06、16功能码。D元件支持Modbus之03、06、16功能码。

2024-04-11 14:37:02 2345

原创 MessageBox(消息提示框)使用说明

小编介绍了MessageBox的用法和Show()方法的成员对应的不同样式,各种样式间存在很多种组合,具体使用的时候可以先测试一下,便于确定最合适的整体样式组合。对于还存在的成员,其实是包含在上述样式里的,如Exclamation与Warning相同,Asterisk和Information相同,Hand、Stop和Error相同。因而,它的Show()方法的重载最多有四个参数,分别是内容(text)、标题(caption)、按钮(buttons)、图标(icon)。//收到狼来了的消息,我溜了。

2024-04-11 13:31:36 1386 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除