The GridView control is a feature rich and versatile control used to accept, display, and edit data on a web page. It is a commonly used control in ASP.Net web applications.
To use a GridView control a DataSource control has to be attached to the GridView control. The property DataSourceID of the GridView control binds the GridView control to the DataSource control and allows paging, sorting and database operations with the DataSource.
There are four popular DataSource controls and SqlDataSource control is one of them. We use SqlDataSource control, to attach the GridView control to the Sql Server Data base.
The SqlDataSource control contains ConnectionString, SelectCommand, UpdateCommand and DeleteCommand properties. The ConnectionString property connects the DataSource (SqlDataSource) control to the database and properties such as SelectCommand, InsertCommand, UpdateCommand, DeleteCommand contains SQL statements that are executed when we display, insert and delete records using the GridView control.
A GridView control and a SqlDataSource control is placed on the web form. The Select, Delete, Insert and Update commands are used to interact with the Sql Server database.
The Figure shown above gives a overview of how the gridView control works in tandem with SqlDataSource control and the Sql server database. The GridView control is placed on the web form and is visible to the user. The SqlDataSource control is placed on the web form and is not visible to the user at runtime.
After the DataSourceID of the GridView control is set, the SqlDataSource control is ready to establish a connection with the Sql Server database, retrieve data from the database table and pass the data to the GridView control.
For inserting records, either the DetailsView or the FormView control is commonly used with the GridView control. However, we can also use GridView controls FooterTemplate to insert records.
While developing commercial database software such as Accounting or ERP software, we can use GridView controls FooterTemplate to insert records. We need not use DetailsView control or the FormView control.
GridView control supports programmatic access to the GridView object model and sets properties and handles events dynamically.
The GridView control is the successor to the DataGrid control. The GridView control displays database records in a HTML table with each record in a table row and each field in a column.
To display data in the GridView control from the sql server database, we need to bind the GridView control to the SqlDataSource control either declaratively or programmatically.
By default, the AutoGenerateColumns property is set to 'true', which renders each field in the data source as a column in the GridView control.
We can also define seven field types to create columns in the GridView control.
For a complete and comprehensive introductory overview see this page - GridView control overview