ControlBoundPromise.cs
30 lines
| 795 B
| text/x-csharp
|
CSharpLexer
/ Implab.Fx / ControlBoundPromise.cs
cin
|
r72 | using System.Windows.Forms; | ||
using System; | ||||
namespace Implab.Fx { | ||||
public class ControlBoundPromise<T> : Promise<T> { | ||||
readonly Control m_target; | ||||
public ControlBoundPromise(Control target) { | ||||
Safe.ArgumentNotNull(target, "target"); | ||||
m_target = target; | ||||
} | ||||
cin
|
r102 | public ControlBoundPromise(Control target, IPromise parent) | ||
: base(parent) { | ||||
cin
|
r72 | Safe.ArgumentNotNull(target, "target"); | ||
m_target = target; | ||||
} | ||||
protected override void InvokeHandler(HandlerDescriptor handler) { | ||||
if (m_target.InvokeRequired) | ||||
m_target.BeginInvoke(new Action<HandlerDescriptor>(base.InvokeHandler), handler); | ||||
else | ||||
base.InvokeHandler(handler); | ||||
} | ||||
} | ||||
} | ||||