public void AddHandler(string ID, ILinkingEventHandler newhandler) { ILinkSource source; if (this._sources.TryGetValue(ID, out source) == true) { this.RegisterHandlerToSource(source, newhandler); } else { List <ILinkingEventHandler> pendinglist; if (this._pendingqueries.TryGetValue(ID, out pendinglist) == true) { pendinglist.Add(newhandler); } else { pendinglist = new List <ILinkingEventHandler>(); pendinglist.Add(newhandler); this._pendingqueries.Add(ID, pendinglist); } } }
private void RegisterHandlerToSource(ILinkSource Source, ILinkingEventHandler Handler) { Source.ValueChanged += Handler.OnLinkedSourceValueChanged; }