首页 > 编程知识 正文

C# 自定义控件开发及使用(WinForm)

时间:2023-05-05 18:37:42 阅读:210826 作者:3076

C# 自定义控件开发及使用(WinForm) 开发目的开发流程创建控件库项目自定义控件的使用

开发目的

在使用C# WinForm开发时,工具箱中已经提供了十分丰富的控件库,利用这些基础控件我们可以开展各类项目的开发。
但是我们在开发具有类似的项目时,我们希望将相同类型的功能模块封装成标准的控件,以便在此后的项目开发中直接调用,从而提高工作效率。


提示:以下是本篇文章正文内容,下面案例可供初学者参考,若有改进之处请提出意见并加以批评,谢谢。

开发流程

本篇文章是记录自己在开发Trio运动控制器API函数时,也希望能开发更多的功能块控件模板以供客户使用。
下文以封装上位机连接控制器的功能控件为例,来介绍C#自定义控件的封装方法。

创建控件库项目

1、首先新建 Windows窗体控件库项目

2、在用户界面上添加工具箱中的控件,如下图所示

3、编写控件相应程序

3.1 双击 连接控制器 的控件,写入如下程序代码 private void CntBtn_Click(object sender, EventArgs e){ ipAddress = IpTBox.Text.Trim(); trio.SetHost(ipAddress); trio.Open(PortType.Ethernet, PortId.EthernetREMOTE); isSuccess = trio.IsOpen(PortId.Default); if (trio.IsOpen(PortId.EthernetREMOTE)) { double value; trio.GetAxisVariable("AXISSTATUS", numAxis, out value); if (value != 0) { trio.Execute("ETHERCAT(0,0)"); } MessageBox.Show("成功连接控制器!"); } else { MessageBox.Show("无法连接控制器!"); }} 3.2 双击 断开控制器 的控件,写入如下程序代码 private void DisCntBtn_Click(object sender, EventArgs e){ trio.Close(PortId.Default); isSuccess = trio.IsOpen(PortId.Default); if (isSuccess) { MessageBox.Show("断开控制器失败!"); } else { MessageBox.Show("控制器已断开连接!"); }} 3.3上述程序中使用了关于Trio运控的API函数,所以在使用过程中需要在该项目中添加对Trio运控函数的引用。
提示:如果在封装自定义控件时不需要使用其他引用,则忽略此步骤。

4、修改封装控件名、启动程序、生成解决方案

自定义控件的使用

1、新建一个,在工具箱中添加自定义控件


2、点击浏览后,在自定义控件程序的Debug文件下选择编译形成的dll文件。

打开后可以看见自定义控件已被加载进来。



3、将自定义Connect_controller控件拖动至用户界面上

4、启动程序后可正常运行自定义Connect_controller控件

这样下次实现上位机与控制器之间的连接功能,只需将该控件拖动至用户界面上即可。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。