I’ve complained about this before, but here’s a reminder about why each exists:
- Based on the table, so supports real columns.
- Is internally virtual, but like the table, does not support data binding.
- Supports data binding (using a controller-approach).
- Is not virtual.
- Supports data binding (no controller, model/delegate attach directly).
- Is virtual.