2 利用WinForm调用类库
在解决方案下面,新建WinForm工程
在引用上面,右键选择添加引用
点击浏览,选择之前生成的dll,
点击确定按钮,完成引用的添加。
在调用库时,在开头位置添加命名空间的引用,此处为using EventTesting;
在界面中,进行两个功能的测试。1 )在界面内输入字符串,点击按钮,触发事件2)实现一个简单函数Add,在执行时,触发事件,代码如下:
using System; using System.Windows.Forms; using EventTesting;//导入的类库 namespace WindowsFormsApp1 { public partial class Form1 : Form { private EventPublisher publisher; // 声明 publisher 作为类级别的字段 public Form1() { InitializeComponent(); publisher = new EventPublisher(); // 在初始化时创建 EventPublisher 实例 publisher.MyEvent += HandleEvent; } private static void HandleEvent(object sender, MyEventArgs e) { MessageBox.Show($"执行结果: {e.Message}"); } private void addBtn_Click(object sender, EventArgs e) { //将a、b的值传入Add函数,并触发 HandleEvent事件 textBox1.Text = publisher.Add((int)a.Value, (int)b.Value).ToString(); } private void RaiseEvent_Click(object sender, EventArgs e) { publisher.RaiseEvent(SetStr.Text); } } }
执行情况:
1)填写输入,点击按钮,触发了事件,弹出提示框。
2)输入a=1,b=2,事件触发,得到结果。
3 在LabVIEW中,调用事件
1)选择构造器节点
2)浏览选择生成的dll,选择事件类。
3)选择事件回调,建立一个回调函数,函数里面是将触发事件的字符串显示到界面的控件中。
4)同样是做两组测试,一个直接触发,另一个通过Add函数间接触发。前面板如下:
触发程序:
Add程序:
5)执行测试。触发的测试如下:
执行Add的测试如下:
利用C#编写事件相关的类库,在WinForm和LabVIEW中进行测试,并描述相关程序的调用方法。
1 编写事件的相关类库
新建项目,先利用C#编写.NET Framework类库。
这个类库主要用于展示事件的定义和触发。EventPublisher类包含了一个自定义事件MyEvent,并且在Add方法中演示了如何触发事件。其他应用程序可以订阅这个事件,并在事件触发时执行相应的操作,以便处理事件相关的信息。
using System; namespace EventTesting { // 1. 定义事件参数类 public class MyEventArgs : EventArgs { public string Message { get; } public MyEventArgs(string message) { Message = message; } } // 2. 定义包含事件的类 public class EventPublisher { // 定义事件,使用 EventHandler 委托,事件参数类型是 MyEventArgs public event EventHandler< MyEventArgs > MyEvent; // 触发事件的方法 public void RaiseEvent(string message) { // 创建事件参数对象 MyEventArgs args = new MyEventArgs(message); // 触发事件 MyEvent?.Invoke(this, args); } public int Add(int a, int b) { //在调用此函数时,触发事假 int sum = a + b; RaiseEvent(sum.ToString()); return sum; } } }
选择“生成”或“重新生成”,生成dll文件。
审核编辑 黄宇
-
LabVIEW
+关注
关注
1969文章
3654浏览量
323143
发布评论请先 登录
相关推荐
评论