Example #1
0
 protected virtual void fireChange(T oldValue, T newValue)
 {
     if (_OnUpdate != null)
     {
         List <Exception> exceptions = null;
         foreach (Delegate d in _OnUpdate.GetInvocationList())
         {
             try
             {
                 (d as ValueChange <T>).Invoke(this, oldValue, newValue);
             }
             catch (Exception e)
             {
                 if (exceptions == null)
                 {
                     exceptions = new List <Exception>();
                 }
                 exceptions.Add(e);
             }
         }
         if (exceptions != null)
         {
             throw new AggregateException("There were exceptions while firing " + name + "'s change event.", exceptions);
         }
     }
 }