Both of the following use SQL-Server yet the code of interest will work with any database as we are detached from the actual database.
Don't get hung-up on what database is being used and in regards to the C# code sample using Entity Framework, don't get hung-up on this as the main focus is using the BindingList for performing updates rather than using DataGridView events other the DataGridViewComboBox as in that code sample I use projections which means updates must be handled slightly different than the other fields that are not DataGridViewComboBox columns.
Also note both code samples were done for teaching.
- VB.NET see the following code sample using conventional data provider methods and SQL-Server.
- C# code sample using Entity Framework with BindingList/BindingSource to get at changed data, see Customer. See this form where the DataGridView changes are updated immediately. #### C# screenshot
- One should always work from the DataGridView via a DataSource rather than from DataGridView cells directly.
- When formatting is needed consider using CellFormatting event and know with many rows and columns you may expect the DataGridView to be slower than without this event which is why there is also virtual mode.