gpt4 book ai didi

c# - "parameter count mismatch"调用方法时

转载 作者:行者123 更新时间:2023-11-30 22:12:26 31 4
gpt4 key购买 nike

我正在用 wpf 应用程序编写 c#,但出现此错误

parameter count mismatch

同时调用 DoDisplay 方法。不知道少了哪个参数?

这是我的代码

public System.Windows.Controls.RichTextBox _displayWindow = new System.Windows.Controls.RichTextBox();

public void DisplayData(messageType type, String msg)
{
_displayWindow.Dispatcher.Invoke(new EventHandler(DoDisplay));
}

public void DoDisplay(object sender, EventArgs e)
{
try {
_displayWindow.Selection.Text = string.Empty;
_displayWindow.AppendText(_msg);
_displayWindow.ScrollToEnd();
}
catch (Exception ex)
{
}
}

最佳答案

Dispatcher.Invoke 采用Action,即没有参数的delegate。由于您没有在方法中使用 senderEventArgs 然后将您的方法更改为:

public void DoDisplay()
{
}

及其调用:

_displayWindow.Dispatcher.Invoke(new Action(() => DoDisplay()));

如果你想使用你的delegate被调用,那么你必须通过调用传递参数:

_displayWindow.Dispatcher.Invoke(YOURDELEGATE, YOURPARAMETERS)

关于c# - "parameter count mismatch"调用方法时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19701731/

31 4 0