我正在编写一个使用第三方类的应用程序。此类定义了以下事件:
public event SamplesAvailableDelegate<ByteSamplesEventArgs> FFTAvailable;
,并且此事件在此类中引发。我想在Windows窗体应用程序中订阅此事件。
我尝试了以下方法:
public partial class Form1 : Form
{
Client _client;
public Form1()
{
InitializeComponent();
_client = new Client();
_client.FFTAvailable += _fftAvailable(object sender, ByteSamplesEventArgs e);
}
private void _fftAvailable(object sender, EventArgs e)
{
//do something here
}
}
当我这样做时,我得到一个错误“无法隐式转换void类型... 有人可以告诉我处理事件的正确语法吗? 谢谢
答案 0 :(得分:2)
好的,解决方案很简单。我需要以下条件:
_client.FFTAvailable += _FTTAvailable;
然后
private void _FFTAvailable(object sender, ByteSamplesEventArgs e)
{
}
这有效。谢谢您的帮助。我没有宣布事件处理程序。
答案 1 :(得分:0)
您需要共享委托人SamplesAvailableDelegate<ByteSamplesEventArgs>
的签名。
_fftAvailable
期望返回某些数据类型,但是返回空值。