When to use ListChanged, CurrentChanged, CurrentItemChanged, or DataSourceChanged

ListChanged event procedure:

The ListChanged event occurs when data in a list is:

  • Modified
  • Added
  • Deleted
  • If the data source or data member is changed

DataSourceChanged event procedure:

The DataSourceChanged event occurs only when the data source is changed.

The DataSourceChanged event does not occur:

  • With a modification of data member
  • When data is added to, deleted, modified in the data source

CurrentChanged event procedure:

This CurrentChanged event occurs when the current item changes.

  • This event may occur when the user navigates through the data
  • Does not change because the data in the list is modified.

CurrentItemChanged event procedure:

The CurrentItemChanged  event occurs:

  • For actions that cause the CurrentChanged event to occur
  • Also occurs when a modification of a property happens