[Overview][Constants][Types][Classes][Procedures and functions][Variables] | Reference for unit 'Classes' (#fcl)

# TCollection.BeginUpdate

Start an update batch.

## Declaration

`public procedure TCollection.BeginUpdate;`

## Description

BeginUpdate is called at the beginning of a batch update. It raises the update count with 1.

Call BeginUpdate at the beginning of a series of operations that will change the state of the collection. This will avoid the call to TCollection.Update for each operation. At the end of the operations, a corresponding call to EndUpdate must be made. It is best to do this in the context of a Try ... finally block:

    With MyCollection Do
        try
          BeginUpdate;
          // Some Lengthy operations
        finally
          EndUpdate;
        end;

This insures that the number of calls to BeginUpdate always matches the number of calls to TCollection.EndUpdate, even in case of an exception.

## See also

TCollection.EndUpdate |  | Ends an update batch.
TCollection.Changed |  | Procedure called if an item is added to or removed from the collection.
TCollection.Update |  | Hander called when an item in the collection has changed.