BindingSource.SuspendBinding and BindingSource.ResumeBinding are two methods that allow the temporary suspension and resumption of data binding in a simple-binding scenario. You would typically suspend data binding if the user must be allowed to make several edits to data fields before validation occurs. For example, if one field must be changed in accordance with a second, but where validating the first field would cause the second field to be in error.
Using BindingSource.SuspendBinding and prevents changes from being pushed into the data source until BindingSource.ResumeBinding is called, but does not actually prevent any events from occurring. Controls that use complex data binding, such as the System.Windows.Forms.DataGridView control, update their values based on change events such as the CurrencyManager.ListChanged event, so calling BindingSource.SuspendBinding will not prevent them from receiving changes to the data source. For this reason, this BindingSource.SuspendBinding and BindingSource.ResumeBinding are designed for use with simple-bound controls, such as the System.Windows.Forms.TextBox control. Alternatively you can use these methods in a complex binding scenario if you suppress BindingSource.ListChanged events by setting the BindingSource.RaiseListChangedEvents property to false.