The selected records are kept by ID in a dictionary to allow the user to sort the content but not lose the checked rows.The Data Grid View does not provide any new features apart from virtual mode to enable this.What you can do is use the Join View class described in the following article Using this class you can join two or more Data Tables together.
My Naive Reasoning: I suspect that extending Table Adapters is more suited to ASP.
NET and the state-less browser environment, than to the desktop environment of Win Forms (or WPF).
The data you display in the Data Grid View control will normally come from a data source of some kind, but you might want to display a column of data that does not come from the data source. The following code example demonstrates how to create an unbound column of check box cells to enable the user to select database records to process.
The grid is put into virtual mode and responds to the necessary events.
One list has no filter applied while the other one will be filtered only when the user is editing a subcategory cell.