C# 如何调用回调函数或句柄

C# 如何调用回调函数或句柄,c#,function,callback,overriding,naudio,C#,Function,Callback,Overriding,Naudio,我有以下功能: public WaveIn(WaveCallbackInfo callbackInfo) { this.DeviceNumber = 0; this.WaveFormat = new WaveFormat(8000, 16, 1); this.BufferMilliseconds = 100; this.NumberOfBuffers = 3;

我有以下功能:

 public WaveIn(WaveCallbackInfo callbackInfo)
        {
            this.DeviceNumber = 0;
            this.WaveFormat = new WaveFormat(8000, 16, 1);
            this.BufferMilliseconds = 100;
            this.NumberOfBuffers = 3;
            this.callback = new WaveInterop.WaveCallback(Callback);
            this.callbackInfo = callbackInfo;
            callbackInfo.Connect(this.callback);
        }
我怎么称呼它

WaveIn(callbackInfo: ????);
我不想改变这里的参数:

this.WaveFormat = new WaveFormat(8000, 16, 1);
如果我不能在回调中更改这些参数,我可以覆盖它吗


谢谢

我建议您忽略该构造函数并调用默认构造函数

var waveIn = new WaveIn();
如果要指定不同的录制波形,只需设置波形属性(在开始录制之前)


好的,看起来WaveCallbackInfo是NAudio的一部分。所以你的问题基本上是如何使用NAudio的这一部分,对吗?乍一看,这对我来说并不明显。是的,你对Naudio的看法是正确的,我希望能够从用户输入中更改这些参数,第一个是频率,第二个是位,第三个是通道数。我不知道怎么做。我试图重写它,但没有正确执行。您能更改
WaveIn
方法的参数和代码吗?有人吗?我没想到这会是一个如此困难的问题:)
waveIn.WaveFormat = new WaveFormat(44100, 16, 2);