一、Winform代码
private void btnPublish_Click(object sender, EventArgs e)
{
var appWorker = new AppWorker(参数);
appWorker.PublishEndEvent += AppWorker_PublishEndEvent;
appWorker.Publish();
}
public delegate void PublishUIHandler(参数);
private void AppWorker_PublishEndEvent(参数)
{
PublishUIHandler d = new PublishUIHandler(PublishEndHandle);
Invoke(d, 参数);
}
private void PublishEndHandle(参数)
{
//具体更新主界面的代码
}
二、工作类代码
public class AppWorker
{
public delegate void PublishEventHandler(PublishUIInfoModel publishEndInfo);
public event PublishEventHandler PublishEndEvent;
public void Publish()
{
//长时间执行的代码
PublishEndEvent?.Invoke(参数);
}
}



