C# 关于类向窗体传值
类(dll)工程类
{
启动事件()
{
事件.调用的函数(被调的函数)
}
被调的函数()
{
返回 AL //Al里的值不是固定的
}
}
窗体(From)工程
From 调用 启动事件()
问:窗体调用(启动事件)后 事件一旦触发 被调函数里的AL参数如何传给窗体?
事件触发不止是一次的 在dll实现什么 窗体才时时的接受到AL里的值呢?
--------------------编程问答-------------------- 问题补充:
就是 窗体 调用 启动事件(我这里写的是一个监控) 后
一旦触发这个 监控事件 AL里的值就要在次传到 窗体;
请问要如何实现呢??? --------------------编程问答-------------------- 看看这个,类似的传值:
http://topic.csdn.net/t/20041027/19/3497195.html --------------------编程问答-------------------- Should use delegate.
'Windows Form
Imports ClassLibrary2
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim delReturnValue As New ReturnValue(AddressOf ReturnValueHandler)
Dim objC As New Class1
objC.DoTask(delReturnValue)
End Sub
Private Function ReturnValueHandler(ByVal value As String)
MessageBox.Show(value)
End Function
End Class
'DLL
Public Delegate Function ReturnValue(ByVal value As String)
Public Class Class1
Public Function DoTask(ByVal ReturnValueHandler As ReturnValue)
'Do some task here
ReturnValueHandler.Invoke("A")
End Function
End Class --------------------编程问答-------------------- msdn 看看异步调用
--------------------编程问答-------------------- up --------------------编程问答-------------------- 接分~ --------------------编程问答-------------------- 看你的需要,采用下面这2种方法中的一种。
1、把AL的返回值写在dll类的一个List变量里。
Form窗体只在需要的时候去读List。
2、如果这个AL返回值需要Form马上处理,使用delegate回调Form的处理函数,
把AL作为回调函数的传入参数。
补充:.NET技术 , C#