gpt4 book ai didi

c# - MethodInvoke 委托(delegate)或 lambda 表达式

转载 作者:可可西里 更新时间:2023-11-01 07:53:15 25 4
gpt4 key购买 nike

两者有什么区别?

Invoke((MethodInvoker) delegate {
checkedListBox1.Items.RemoveAt(i);
checkedListBox1.Items.Insert(i, temp + validity);
checkedListBox1.Update();
}
);

对比

Invoke((MethodInvoker)
(
() =>
{
checkedListBox1.Items.RemoveAt(i);
checkedListBox1.Items.Insert(i, temp + validity);
checkedListBox1.Update();
}
)
);

有什么理由使用 lambda 表达式吗? (MethodInvoker) 是否将委托(delegate)和 lambda 转换为 MethodInvoker 类型?哪种表达式不需要 (MethodInvoker) 转换?

最佳答案

1) lambda 表达式更短更清晰

2) 是

3) 你可以像这样使用 Action 类型:

Invoke(new Action(
() =>
{
checkedListBox1.Items.RemoveAt(i);
checkedListBox1.Items.Insert(i, temp + validity);
checkedListBox1.Update();
}
)
);

关于c# - MethodInvoke 委托(delegate)或 lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7750519/

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