gpt4 book ai didi

来自 DLL 的 C# 回调

转载 作者:太空狗 更新时间:2023-10-29 17:34:45 24 4
gpt4 key购买 nike

我正在用 C#.NET 编写应用程序 A 和 DLL B。我如何执行以下操作:

  1. A调用B中的函数
  2. 希望 B 使用委托(delegate)/回调来更新 A 的 UI 中的状态

不是关于 BackgroundWorker 的......那部分在 A 中工作正常。我看不到的是如何让 B 知道在 A 中调用什么函数。

最佳答案

要扩展 Rob Prouse 的答案,您需要声明一个委托(delegate),然后将匹配的方法传递给它。

在 B 中:

public delegate void CallbackDelegate(string status);

public void DoWork(string param, CallbackDelegate callback)
{
callback("status");
}

在 A 中:

public void MyCallback(string status)
{
// Update your UI.
}

当你调用这个方法时:

B.DoWork("my params", MyCallback);

关于来自 DLL 的 C# 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/288192/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com