TypechoJoeTheme

武小栈

武小栈

学习、记录、总结、分享

最新文章

2021-03-30

[分享栈]Winform实现无边框无标题栏拖动的两种方式

[分享栈]Winform实现无边框无标题栏拖动的两种方式
[分享栈]Winform实现无边框无标题栏拖动的两种方式[本文来至于微信公众号“dotNet工控上位机”]Winform作为桌面应用程序的一个代表,可以说是C#初学者快速入门最好的一种方式,然而随着我们的开发能力的提升,我们对UI界面的要求变得越来越高,于是我们开始不断优化、升级我们的UI界面。Winform无边框设计是我们常用的一种方式,无边框设计意味着没有了应用程序的标题栏,也就无法直接拖动,今天主要介绍两种实现无边框拖动的方式。第一种方式:代码实现Point mPoint; private void Panel_MouseDown(object sender, MouseEventArgs e) { mPoint = new Point(e.X, e.Y); } private void Panel_MouseMove(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { this.Location = new Point(this....
武小栈
2021-03-30

分享栈

32 阅读
0 评论
2021年03月30日
32 阅读
0 评论
2021-02-23

[技术栈]网络协议3UDP协议

[技术栈]网络协议3UDP协议
1. 前言其实前文了解了TCP之后,UDP也不难理解了,肯定是一种协议格式和一些交互机制。TCP所有机制可以说都是围绕着可靠二字展开的,难道TCP就没有缺点吗?连接三次握手,传输数据还有应答,断开都要四次挥手,听上去就觉得很麻烦。而且每次交互都是需要响应时间和传输时间的。UDP就应运而生了,它所应用的场景就是数据传输不需要那么可靠(如视频直播、网络电台等),或者是整个数据包就本身就很小的情况。2. UDP头部可以看到UDP报文头就超级简单了,仅仅8个字节,包含了最基本的四个字段:源端口、目的端口、长度、校验值。3. 机制我感觉UDP没啥机制,就是简单的发送,仅是将内容包装了一下(加上UDP报文头部),非要所机制应该就是有个校验,可以校验数据包是否正确传输。这一块待小伙伴来补充吧。
武小栈
2021-02-23

技术栈

79 阅读
0 评论
2021年02月23日
79 阅读
0 评论
2021-02-22

[技术栈]网络协议2TCP协议

[技术栈]网络协议2TCP协议
1.前言其实TCP协议所在的传输层是一个在网络系统里很基础的层级了,模组中常用的HTTP,MQTT,FTP都是在TCP的基础上建立起来的,如果TCP不能用,以上这样应用都要凉凉。2.TCP协议前面的《网络协议1协议栈》已经简单的介绍了TCP协议的工作方式,在这里再稍微深入的说一下TCP协议,为啥只讲稍微深入呢,因为探究深入了以小弟的水平还真说不明白是怎么回事。大家关于TCP的印象是啥?三次握手四次挥手?还是不丢包?这里就以一个完整数据传输流程简单的介绍一些TCP是怎样传输数据的,整体流程下图所示。2.1 TCP连接阶段第一步就是建立连接。建立TCP连接,这里的建立连接并不是真正意义上的建立连接,当设备接入互联网的时候,互联网的设备就已经连接好了,本质上来说互联网所有设备都是相连的,这里的连接而是一个准备数据传输的过程。都知道建立连接要三次握手,这里引入几个问题,有问题的小伙伴也可以在下面提问,大家来补充答案哦:1、既然设备接入网络客户端和服务器就已经连接了,为什么TCP通信还要建立连接?​ 答:更好的保证可靠性,经过三次握手也可以让通信双方验证各自的发送能力和接收能力是否正...
武小栈
2021-02-22

技术栈

90 阅读
0 评论
2021年02月22日
90 阅读
0 评论
2021-02-07

[技术栈]网络协议1协议栈

[技术栈]网络协议1协议栈
1.前言接下来我打算写几篇文章简单的介绍一下我们常用的一些通信协议,当然所有描述都是基于我自己现有了解,肯定会有所纰漏,甚至错误的地方,望各位大佬不吝指正。2.网络模型介绍以中移ML302模组为例,在模组部官网中查询到的产品规格中网络协议支持以上这几项,所以以测IPv4,IPv6,TCP,UDP,PPP,FTP,HTTP,NTP,MQTT这八种协议为例说明。既然要测网络协议,那就先找一个网络协议模型瞧一瞧,个人比较喜欢看五层协议,就找个五层协议说说。上面这个就是TCP/IP五层模型,不熟悉的也了解过,不了解的也听说过。IPv4,IPv6这俩位于第3层,网际层。TCP,UDP这俩位于第4层,传输层。PPP位于第2层,网络接口层FTP,HTTP,NTP,MQTT这四个都位于第5层,应用层。2.通信示例介绍2.1通信流程就以我们最耳熟能详的TCP为例来讲讲一次数据的发送和接收发生了什么,总得来说就如下图所示。从用户A操作发送信息开始,经过了协议栈层层“打包”,然后数据终于通过网线传到了用户B处,然后这个数据经过了用户B设备的协议栈层层“拆包”,最终用户B拿到了用户A发送的原内容。2.2...
武小栈
2021-02-07

技术栈

179 阅读
0 评论
2021年02月07日
179 阅读
0 评论
2021-02-04

[分享栈]winform根据控件name获取到控件对象

[分享栈]winform根据控件name获取到控件对象
1. 前言今天武小栈接到了一个产线工具一拖多的更改需求,就引出了今天的总结,C#开发winform项目根据控件name获取到控件对象。2. 正文查看Form.ControlCollection类可以看到提供了两种方法:2.1 Item属性Label label = this.Controls["label"+(i+1)] as Label;2.2 Find方法Label label = this.Controls.Find("label" + (i + 1),true)[0] as Label3. 注意Find()函数这里第二个参数为bool型,指定是否在所有子类控件中查找。这里引出了第一种方式查找控件仅在当前控件的第一代子控件查找,第二种方式当第二个参数为true时,在所有代子类中查找控件,我这里猜一下里面是一个嵌套循环。根据实际需求选择即可。
武小栈
2021-02-04

分享栈

220 阅读
0 评论
2021年02月04日
220 阅读
0 评论