/// <summary> /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed. /// <example> /// uploadprogresschangedeventhandler.BeginInvoke(sender, e, callback); /// </example> /// </summary> public static IAsyncResult BeginInvoke(this UploadProgressChangedEventHandler uploadprogresschangedeventhandler, Object sender, UploadProgressChangedEventArgs e, AsyncCallback callback) { if (uploadprogresschangedeventhandler == null) { throw new ArgumentNullException("uploadprogresschangedeventhandler"); } return(uploadprogresschangedeventhandler.BeginInvoke(sender, e, callback, null)); }