我试图理解为什么 BeginInvoke 方法不接受匿名方法。
void bgWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
if (InvokeRequired)
{
//Won't compile
BeginInvoke(delegate(object sender, ProgressChangedEventArgs e)
{ bgWorker_ProgressChanged(sender, e); });
}
progressBar1.Increment(e.ProgressPercentage);
}
它告诉我'无法从'匿名方法'转换为'System.Delegate',而当我将匿名方法转换为委托时它确实有效?
BeginInvoke((progressDelegate)delegate { bgWorker_ProgressChanged(sender, e); });