BindingSource.ResetBindings Method (Boolean)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Causes a control bound to the BindingSource to reread all the items in the list and refresh their displayed values.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public void ResetBindings(
	bool metadataChanged


Type: System.Boolean

true if the data schema has changed; false if only values have changed.

The ResetBindings method informs all controls bound to the BindingSource to refresh their values. The method does this by raising the ListChanged event at least once; the metaDataChanged parameter indicates the nature of the underlying change.

Regardless of the value of metaDataChanged, a ListChanged event is raised with ListChangedEventArgs.ListChangedType set to ListChangedType.Reset. As a consequence, calling ResetBindings with a parameter of true will raise two ListChanged events.

ResetBindings is automatically called whenever another member makes major changes to the data-binding, such as setting the DataSource or DataMember properties. However, the programmer can also call this method explicitly.

The following code example uses a BindingSource component to bind an array list, which does not provide change notification. An item is removed from the list, and the bound controls are notified of the change by calling the ResetBindings method. This code example is part of a larger example provided in How to: Reflect Data Source Updates in a Windows Forms Control with the BindingSource.

private void button1_Click(object sender, EventArgs e)
    // If items remain in the list, remove the first item. 
    if (states.Count > 0)

        // Call ResetBindings to update the textboxes.

.NET Framework
Available since 2.0
Return to top