Tôi cố gắng hiểu tại sao phương thức BeginInvoke không chấp nhận một phương thức nặc danh.Phương pháp và đại biểu vô danh
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);
}
Nó cho tôi biết 'không thể chuyển từ' phương thức ẩn danh 'thành' System.Delegate 'trong khi tôi truyền phương thức ẩn danh cho đại biểu hoạt động?
BeginInvoke((progressDelegate)delegate { bgWorker_ProgressChanged(sender, e); });
Hãy nhìn vào câu hỏi này, quá: http://stackoverflow.com/questions/253138/anonymous-method-in-invoke-call – tanascius