new public SignalFuture Show(IWin32Window owner = null) { var f = new SignalFuture(); FormClosedEventHandler del = (s, e) => f.Complete(); f.RegisterOnComplete((_) => { this.FormClosed -= del; }); this.FormClosed += del; if (owner != null) { base.Show(owner); } else { base.Show(); } return(f); }
public override void Invoke() { WorkItem(); Future.Complete(); }
public void OnEvent(object sender, EventArgs args) { OnDispose(Future); Future.Complete(); }