GridView Class
 

Displays the values of a data source in a table where each column represents a field and each row represents a record. The GridView control enables you to select, sort, and edit these items.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

Inheritance Hierarchy
SystemObject
   System.Web.UIControl
     System.Web.UI.WebControlsWebControl
       System.Web.UI.WebControlsBaseDataBoundControl
         System.Web.UI.WebControlsDataBoundControl
           System.Web.UI.WebControlsCompositeDataBoundControl
            System.Web.UI.WebControlsGridView

Syntax
[ControlValuePropertyAttribute("SelectedValue")]
public class GridView : CompositeDataBoundControl, IPostBackContainer, 
	IPostBackEventHandler, ICallbackContainer, ICallbackEventHandler, 
	IPersistedSelector, IDataKeysControl, IDataBoundListControl, 
	IDataBoundControl, IFieldControl
[ControlValuePropertyAttribute("SelectedValue")]
public ref class GridView : CompositeDataBoundControl, IPostBackContainer, 
	IPostBackEventHandler, ICallbackContainer, ICallbackEventHandler, 
	IPersistedSelector, IDataKeysControl, IDataBoundListControl, 
	IDataBoundControl, IFieldControl
[<ControlValuePropertyAttribute("SelectedValue")>]
type GridView = 
    class
        inherit CompositeDataBoundControl
        interface IPostBackContainer
        interface IPostBackEventHandler
        interface ICallbackContainer
        interface ICallbackEventHandler
        interface IPersistedSelector
        interface IDataKeysControl
        interface IDataBoundListControl
        interface IDataBoundControl
        interface IFieldControl
    end
<ControlValuePropertyAttribute("SelectedValue")>
Public Class GridView
	Inherits CompositeDataBoundControl
	Implements IPostBackContainer, IPostBackEventHandler, ICallbackContainer,
	ICallbackEventHandler, IPersistedSelector, IDataKeysControl, IDataBoundListControl,
	IDataBoundControl, IFieldControl
Constructors
NameDescription
System_CAPS_pubmethod GridView

Initializes a new instance of the GridView class.

Properties
NameDescription
System_CAPS_pubproperty

Gets or sets the access key that allows you to quickly navigate to the Web server control.(Inherited from WebControl.)

System_CAPS_protproperty

Gets the browser-specific adapter for the control.(Inherited from Control.)

System_CAPS_pubproperty

System_CAPS_pubproperty

Gets or sets a value indicating whether the paging feature is enabled.

System_CAPS_pubproperty

Gets or sets a value indicating whether the sorting feature is enabled.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of alternating data rows in a GridView control.

System_CAPS_pubproperty

Gets or sets the application-relative virtual directory of the Page or UserControl object that contains this control.(Inherited from Control.)

System_CAPS_pubproperty

Gets the collection of arbitrary attributes (for rendering only) that do not correspond to properties on the control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets a value indicating whether bound fields are automatically created for each field in the data source.

System_CAPS_pubproperty

Gets or sets a value indicating whether a CommandField field column with a Delete button for each data row is automatically added to a GridView control.

System_CAPS_pubproperty

Gets or sets a value indicating whether a CommandField field column with an Edit button for each data row is automatically added to a GridView control.

System_CAPS_pubproperty

Gets or sets a value indicating whether a CommandField field column with a Select button for each data row is automatically added to a GridView control.

System_CAPS_pubproperty

Gets or sets the background color of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the URL to an image to display in the background of a GridView control.

System_CAPS_pubproperty

This API supports the product infrastructure and is not intended to be used directly from your code. Gets the control that contains this control's data binding.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the border color of the Web control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the border style of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the border width of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a GridViewRow object that represents the bottom pager row in a GridView control.

System_CAPS_pubproperty

Gets or sets the text to render in an HTML caption element in a GridView control. This property is provided to make the control more accessible to users of assistive technology devices.

System_CAPS_pubproperty

Gets or sets the horizontal or vertical position of the HTML caption element in a GridView control. This property is provided to make the control more accessible to users of assistive technology devices.

System_CAPS_pubproperty

Gets or sets the amount of space between the contents of a cell and the cell's border.

System_CAPS_pubproperty

Gets or sets the amount of space between cells.

System_CAPS_protproperty

Gets a value that indicates whether the server control's child controls have been created.(Inherited from Control.)

System_CAPS_pubproperty

Gets the control ID for HTML markup that is generated by ASP.NET.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the algorithm that is used to generate the value of the property.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the names of the data fields whose values are appended to the property value to uniquely identify each instance of a data-bound control.

System_CAPS_pubproperty

This API supports the product infrastructure and is not intended to be used directly from your code. Gets the data values that are used to uniquely identify each instance of a data-bound control when ASP.NET generates the value.

System_CAPS_protproperty

Gets a character value representing the separator character used in the property.(Inherited from Control.)

System_CAPS_pubproperty

Gets a collection of DataControlField objects that represent the column fields in a GridView control.

System_CAPS_pubproperty

Gets or sets the control that will automatically generate the columns for a GridView control that uses ASP.NET Dynamic Data features.

System_CAPS_protproperty

Gets the HttpContext object associated with the server control for the current Web request.(Inherited from Control.)

System_CAPS_pubproperty

Gets a collection of the child controls within the composite data-bound control.(Inherited from CompositeDataBoundControl.)

System_CAPS_pubproperty

Gets the style of the Web server control. This property is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a value indicating whether a Style object has been created for the property. This property is primarily used by control developers.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the Cascading Style Sheet (CSS) class rendered by the Web server control on the client.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a reference to the naming container if the naming container implements IDataItemContainer.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets an array that contains the names of the primary key fields for the items displayed in a GridView control.

System_CAPS_pubproperty

Gets a collection of DataKey objects that represent the data key value of each row in a GridView control.

System_CAPS_pubproperty

Gets a reference to the naming container if the naming container implements IDataKeysControl.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the name of the list of data that the data-bound control binds to, in cases where the data source contains more than one distinct list of data items.(Inherited from DataBoundControl.)

System_CAPS_pubproperty

Gets or sets the object from which the data-bound control retrieves its list of data items.(Inherited from BaseDataBoundControl.)

System_CAPS_pubproperty

Gets or sets the ID of the control from which the data-bound control retrieves its list of data items.(Inherited from DataBoundControl.)

System_CAPS_pubproperty

Gets an object that implements the IDataSource interface, which provides access to the object's data content.(Inherited from DataBoundControl.)

System_CAPS_pubproperty

Gets or sets the name of the method to call in order to delete data.

System_CAPS_protproperty

Gets a value indicating whether a control is being used on a design surface.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the index of the row to edit.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the row selected for editing in a GridView control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the empty data row rendered when a GridView control is bound to a data source that does not contain any records.

System_CAPS_pubproperty

Gets or sets the user-defined content for the empty data row rendered when a GridView control is bound to a data source that does not contain any records.

System_CAPS_pubproperty

Gets or sets the text to display in the empty data row rendered when a GridView control is bound to a data source that does not contain any records.

System_CAPS_pubproperty

Gets or sets a value indicating whether the Web server control is enabled.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets a value that indicates whether a validator control will handle exceptions that occur during insert or update operations.

System_CAPS_pubproperty

Gets or sets a value that indicates whether the selection of a row is based on index or on data-key values.

System_CAPS_pubproperty

Gets or sets a value indicating whether client-side callbacks are used for sorting and paging operations.

System_CAPS_pubproperty

Gets or sets a value indicating whether themes apply to this control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets a value indicating whether the server control persists its view state, and the view state of any child controls it contains, to the requesting client.(Inherited from Control.)

System_CAPS_protproperty

Gets a list of event handler delegates for the control. This property is read-only.(Inherited from Control.)

System_CAPS_pubproperty

Gets the font properties associated with the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a GridViewRow object that represents the footer row in a GridView control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the footer row in a GridView control.

System_CAPS_pubproperty

Gets or sets the foreground color (typically the color of the text) of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the gridline style for a GridView control.

System_CAPS_pubproperty

Gets a value indicating whether the control has attributes set.(Inherited from WebControl.)

System_CAPS_protproperty

Gets a value indicating whether the current server control's child controls have any saved view-state settings.(Inherited from Control.)

System_CAPS_pubproperty

Gets a GridViewRow object that represents the header row in a GridView control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the header row in a GridView control.

System_CAPS_pubproperty

Gets or sets the height of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets the horizontal alignment of a GridView control on the page.

System_CAPS_pubproperty

Gets or sets the programmatic identifier assigned to the server control.(Inherited from Control.)

System_CAPS_protproperty

This API supports the product infrastructure and is not intended to be used directly from your code. Gets the character used to separate control identifiers.(Inherited from Control.)

System_CAPS_protproperty

Gets a value indicating whether the data-bound control has been initialized.(Inherited from BaseDataBoundControl.)

System_CAPS_protproperty

Gets or sets the name of the method to call in order to insert data.(Inherited from CompositeDataBoundControl.)

System_CAPS_protproperty

Gets a value indicating whether the property is set.(Inherited from BaseDataBoundControl.)

System_CAPS_protproperty

Gets a value indicating whether controls contained within this control have control state.(Inherited from Control.)

System_CAPS_protproperty

Gets a value that indicates whether data binding is automatic.(Inherited from BaseDataBoundControl.)

System_CAPS_protproperty

Gets a value indicating whether the control is enabled.(Inherited from WebControl.)

System_CAPS_protproperty

Gets a value that indicates whether the server control is saving changes to its view state.(Inherited from Control.)

System_CAPS_protproperty

Gets a value that indicates whether model binding is in use.(Inherited from CompositeDataBoundControl.)

System_CAPS_protproperty

Gets a value indicating whether view state is enabled for this control.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the name of the data item type for strongly typed data binding.(Inherited from DataBoundControl.)

System_CAPS_protproperty

Gets a value indicating whether the control participates in loading its view state by instead of index. (Inherited from Control.)

System_CAPS_pubproperty

Gets a reference to the server control's naming container, which creates a unique namespace for differentiating between server controls with the same property value.(Inherited from Control.)

System_CAPS_pubproperty

Gets a reference to the Page instance that contains the server control.(Inherited from Control.)

System_CAPS_pubproperty

Gets the number of pages required to display the records of the data source in a GridView control.

System_CAPS_pubproperty

Gets or sets the index of the currently displayed page.

System_CAPS_pubproperty

Gets a reference to the PagerSettings object that enables you to set the properties of the pager buttons in a GridView control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the pager row in a GridView control.

System_CAPS_pubproperty

Gets or sets the custom content for the pager row in a GridView control.

System_CAPS_pubproperty

Gets or sets the number of records to display on a page in a GridView control.

System_CAPS_pubproperty

Gets a reference to the server control's parent control in the page control hierarchy.(Inherited from Control.)

System_CAPS_pubproperty

Gets a value that specifies the ASP.NET version that rendered HTML will be compatible with.(Inherited from Control.)

System_CAPS_protproperty

Gets or sets a value indicating whether the DataBind method should be called. (Inherited from BaseDataBoundControl.)

System_CAPS_pubproperty

Gets or sets the name of the column to use as the column header for the GridView control. This property is provided to make the control more accessible to users of assistive technology devices.

System_CAPS_pubproperty

Gets a collection of GridViewRow objects that represent the data rows in a GridView control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the data rows in a GridView control.

System_CAPS_protproperty

Gets a DataSourceSelectArguments object that the data-bound control uses when retrieving data from a data source control. (Inherited from DataBoundControl.)

System_CAPS_pubproperty

Gets the DataKey object that contains the data key value for the selected row in a GridView control.

System_CAPS_pubproperty

Gets or sets the index of the selected row in a GridView control.

System_CAPS_pubproperty

Gets or sets the data-key value for the persisted selected item in a GridView control.

System_CAPS_pubproperty

Gets a reference to a GridViewRow object that represents the selected row in the control.

System_CAPS_pubproperty

Gets a reference to the TableItemStyle object that enables you to set the appearance of the selected row in a GridView control.

System_CAPS_pubproperty

Gets the data key value of the selected row in a GridView control.

System_CAPS_pubproperty

The name of the method to call in order to read data.(Inherited from DataBoundControl.)

System_CAPS_pubproperty

Gets or sets a value indicating whether the footer row is displayed in a GridView control.

System_CAPS_pubproperty

Gets or sets a value indicating whether the header row is displayed in a GridView control.

System_CAPS_pubproperty

Gets or sets a value that indicates whether the heading of a column in the GridView control is visible when the column has no data.

System_CAPS_pubproperty

Gets information about the container that hosts the current control when rendered on a design surface.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the skin to apply to the control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets the sort direction of the column being sorted.

System_CAPS_pubproperty

Gets or sets the CSS style for a GridView column when the column is sorted in ascending order.

System_CAPS_pubproperty

Gets or sets the CSS style to apply to a GridView column heading when the column is sorted in ascending order.

System_CAPS_pubproperty

Gets or sets the style of a GridView column when the column is sorted in descending order.

System_CAPS_pubproperty

Gets or sets the style to apply to a GridView column heading when the column is sorted in descending order.

System_CAPS_pubproperty

Gets the sort expression associated with the column or columns being sorted.

System_CAPS_pubproperty

Gets a collection of text attributes that will be rendered as a style attribute on the outer tag of the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a value that indicates whether the control should set the disabled attribute of the rendered HTML element to "disabled" when the control's property is false.(Inherited from BaseDataBoundControl.)

System_CAPS_pubproperty

Gets or sets the tab index of the Web server control.(Inherited from WebControl.)

System_CAPS_protproperty

Gets the HtmlTextWriterTag value for the GridView control.(Overrides .)

System_CAPS_protproperty

Gets the name of the control tag. This property is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets or sets a reference to the template that contains this control. (Inherited from Control.)

System_CAPS_pubproperty

Gets the virtual directory of the Page or UserControl that contains the current server control.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the text displayed when the mouse pointer hovers over the Web server control.(Inherited from WebControl.)

System_CAPS_pubproperty

Gets a GridViewRow object that represents the top pager row in a GridView control.

System_CAPS_pubproperty

Gets the unique, hierarchically qualified identifier for the server control.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the name of the method to call in order to update data.

System_CAPS_pubproperty

Gets or sets a value indicating whether a GridView control renders its header in an accessible format. This property is provided to make the control more accessible to users of assistive technology devices.

System_CAPS_pubproperty

Gets or sets a value that indicates whether the control checks client input from the browser for potentially dangerous values.(Inherited from Control.)

System_CAPS_protproperty

Gets a dictionary of state information that allows you to save and restore the view state of a server control across multiple requests for the same page.(Inherited from Control.)

System_CAPS_protproperty

Gets a value that indicates whether the StateBag object is case-insensitive.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the view-state mode of this control.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the virtual number of items in the data source that the GridView control is bound to when custom paging is used.

System_CAPS_pubproperty

Gets or sets a value that indicates whether a server control is rendered as UI on the page.(Inherited from Control.)

System_CAPS_pubproperty

Gets or sets the width of the Web server control.(Inherited from WebControl.)

Methods
NameDescription
System_CAPS_protmethod AddAttributesToRender

Adds HTML attributes and styles that need to be rendered to the specified HtmlTextWriterTag. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_protmethod AddedControl

Called after a child control is added to the collection of the Control object.(Inherited from Control.)

System_CAPS_protmethod AddParsedSubObject

Notifies the server control that an element, either XML or HTML, was parsed, and adds the element to the server control's ControlCollection object.(Inherited from Control.)

System_CAPS_pubmethod ApplyStyle

Copies any nonblank elements of the specified style to the Web control, overwriting any existing style elements of the control. This method is primarily used by control developers.(Inherited from WebControl.)

System_CAPS_pubmethod ApplyStyleSheetSkin

Applies the style properties defined in the page style sheet to the control.(Inherited from Control.)

System_CAPS_protmethod BeginRenderTracing

Begins design-time tracing of rendering data.(Inherited from Control.)

System_CAPS_protmethod BuildProfileTree

This API supports the product infrastructure and is not intended to be used directly from your code. Gathers information about the server control and delivers it to the property to be displayed when tracing is enabled for the page.(Inherited from Control.)

System_CAPS_protmethod ClearCachedClientID

This API supports the product infrastructure and is not intended to be used directly from your code. Sets the cached value to null.(Inherited from Control.)

System_CAPS_protmethod ClearChildControlState

Deletes the control-state information for the server control's child controls. (Inherited from Control.)

System_CAPS_protmethod ClearChildState

Deletes the view-state and control-state information for all the server control's child controls.(Inherited from Control.)

System_CAPS_protmethod ClearChildViewState

Deletes the view-state information for all the server control's child controls.(Inherited from Control.)

System_CAPS_protmethod ClearEffectiveClientIDMode

This API supports the product infrastructure and is not intended to be used directly from your code. Sets the property of the current control instance and of any child controls to Inherit.(Inherited from Control.)

System_CAPS_protmethod ConfirmInitState

Sets the initialized state of the data-bound control.(Inherited from BaseDataBoundControl.)

System_CAPS_pubmethod CopyBaseAttributes

Copies the properties not encapsulated by the object from the specified Web server control to the Web server control that this method is called from. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_protmethod CreateAutoGeneratedColumn

Obsolete.Creates an automatically generated column field.

System_CAPS_protmethod CreateChildControls

This API supports the product infrastructure and is not intended to be used directly from your code. Creates the control hierarchy that is used to render a composite data-bound control based on the values that are stored in view state.(Inherited from CompositeDataBoundControl.)

System_CAPS_protmethod CreateChildControls

This API supports the product infrastructure and is not intended to be used directly from your code. Creates the control hierarchy used to render the GridView control using the specified data source.(Overrides CompositeDataBoundControlCreateChildControls.)

System_CAPS_protmethod CreateChildTable

This API supports the product infrastructure and is not intended to be used directly from your code. Creates a new child table.

System_CAPS_protmethod CreateColumns

Creates the set of column fields used to build the control hierarchy.

System_CAPS_protmethod CreateControlCollection

Creates a new ControlCollection object to hold the child controls (both literal and server) of the server control.(Inherited from Control.)

System_CAPS_protmethod CreateControlStyle

This API supports the product infrastructure and is not intended to be used directly from your code. Creates the default style for the control.(Overrides WebControlCreateControlStyle.)

System_CAPS_protmethod CreateDataSourceSelectArguments

Creates the DataSourceSelectArguments object that contains the arguments that get passed to the data source for processing.(Overrides DataBoundControlCreateDataSourceSelectArguments.)

System_CAPS_protmethod CreateRow

Creates a row in the GridView control.

System_CAPS_pubmethod DataBind

Binds the data source to the GridView control. This method cannot be inherited.(Overrides BaseDataBoundControlDataBind.)

System_CAPS_protmethod DataBind

Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event. (Inherited from Control.)

System_CAPS_protmethod DataBindChildren

Binds a data source to the server control's child controls.(Inherited from Control.)

System_CAPS_pubmethod DeleteRow

Deletes the record at the specified index from the data source.

System_CAPS_pubmethod Dispose

Enables a server control to perform final clean up before it is released from memory.(Inherited from Control.)

System_CAPS_protmethod EndRenderTracing

Ends design-time tracing of rendering data.(Inherited from Control.)

System_CAPS_protmethod EnsureChildControls

Determines whether the server control contains child controls. If it does not, it creates child controls.(Inherited from Control.)

System_CAPS_protmethod EnsureDataBound

Calls the DataBind method if the property is set and the data-bound control is marked to require binding.(Inherited from BaseDataBoundControl.)

System_CAPS_protmethod EnsureID

Creates an identifier for controls that do not have an identifier assigned.(Inherited from Control.)

System_CAPS_pubmethod Equals

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethod ExtractRowValues

Retrieves the values of each field declared within the specified row and stores them in the specified IOrderedDictionary object.

System_CAPS_protmethod Finalize

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethod FindControl

Searches the current naming container for a server control with the specified id parameter.(Inherited from Control.)

System_CAPS_protmethod FindControl

This API supports the product infrastructure and is not intended to be used directly from your code. Searches the current naming container for a server control with the specified id and an integer, specified in the pathOffset parameter, which aids in the search. You should not override this version of the FindControl method.(Inherited from Control.)

System_CAPS_pubmethod Focus

Sets input focus to a control.(Inherited from Control.)

System_CAPS_protmethod GetCallbackResult

Returns the result of a callback event that targets a control.

System_CAPS_protmethod GetCallbackScript

Creates the callback script for a button that performs a sorting operation.

System_CAPS_protmethod GetData

Retrieves a DataSourceView object that the data-bound control uses to perform data operations.(Inherited from DataBoundControl.)

System_CAPS_protmethod GetDataSource

Retrieves the IDataSource interface that the data-bound control is associated with, if any.(Inherited from DataBoundControl.)

System_CAPS_protmethod GetDesignModeState

This API supports the product infrastructure and is not intended to be used directly from your code. Gets design-time data for a control.(Inherited from Control.)

System_CAPS_pubmethod GetHashCode

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethod GetRouteUrl

Gets the URL that corresponds to a set of route parameters.(Inherited from Control.)

System_CAPS_pubmethod GetRouteUrl

Gets the URL that corresponds to a set of route parameters.(Inherited from Control.)

System_CAPS_pubmethod GetRouteUrl

Gets the URL that corresponds to a set of route parameters and a route name.(Inherited from Control.)

System_CAPS_pubmethod GetRouteUrl

Gets the URL that corresponds to a set of route parameters and a route name.(Inherited from Control.)

System_CAPS_pubmethod GetType

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethod GetUniqueIDRelativeTo

Returns the prefixed portion of the property of the specified control.(Inherited from Control.)

System_CAPS_pubmethod HasControls

Determines if the server control contains any child controls.(Inherited from Control.)

System_CAPS_protmethod HasEvents

Returns a value indicating whether events are registered for the control or any child controls.(Inherited from Control.)

System_CAPS_protmethod InitializePager

Initializes the pager row displayed when the paging feature is enabled.

System_CAPS_protmethod InitializeRow

Initializes a row in the GridView control.

System_CAPS_pubmethod IsBindableType

Determines whether the specified data type can be bound to a column in a GridView control.

System_CAPS_protmethod IsLiteralContent

This API supports the product infrastructure and is not intended to be used directly from your code. Determines if the server control holds only literal content.(Inherited from Control.)

System_CAPS_protmethod LoadControlState

This API supports the product infrastructure and is not intended to be used directly from your code. Loads the state of the properties in the GridView control that need to be persisted, even when the property is set to false.(Overrides ControlLoadControlState.)

System_CAPS_protmethod LoadViewState

Loads the previously saved view state of the GridView control.(Overrides DataBoundControlLoadViewState.)

System_CAPS_protmethod MapPathSecure

Retrieves the physical path that a virtual path, either absolute or relative, maps to.(Inherited from Control.)

System_CAPS_protmethod MarkAsDataBound

Sets the state of the control in view state as successfully bound to data.(Inherited from DataBoundControl.)

System_CAPS_protmethod MemberwiseClone

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethod MergeStyle

Copies any nonblank elements of the specified style to the Web control, but will not overwrite any existing style elements of the control. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_protmethod OnBubbleEvent

Determines whether the event for the Web server control is passed up the page's user interface (UI) server control hierarchy.(Overrides ControlOnBubbleEvent.)

System_CAPS_protmethod OnCreatingModelDataSource

Raises the CreatingModelDataSource event.(Inherited from DataBoundControl.)

System_CAPS_protmethod OnDataBinding

Raises the DataBinding event.(Inherited from Control.)

System_CAPS_protmethod OnDataBound

Raises the DataBound event.(Inherited from BaseDataBoundControl.)

System_CAPS_protmethod OnDataPropertyChanged

Rebinds the GridView control to its data after the , , or property is changed.(Overrides DataBoundControlOnDataPropertyChanged.)

System_CAPS_protmethod OnDataSourceViewChanged
System_CAPS_protmethod OnInit

Raises the ControlInit event.(Overrides BaseDataBoundControlOnInit.)

System_CAPS_protmethod OnLoad

Handles the ControlLoad event.(Inherited from DataBoundControl.)

System_CAPS_protmethod OnPageIndexChanged

Raises the PageIndexChanged event.

System_CAPS_protmethod OnPageIndexChanging

Raises the PageIndexChanging event.

System_CAPS_protmethod OnPagePreLoad

Sets the initialized state of the data-bound control before the control is loaded.(Overrides DataBoundControlOnPagePreLoad.)

System_CAPS_protmethod OnPreRender

This API supports the product infrastructure and is not intended to be used directly from your code. Raises the PreRender event.(Overrides BaseDataBoundControlOnPreRender.)

System_CAPS_protmethod OnRowCancelingEdit

Raises the RowCancelingEdit event.

System_CAPS_protmethod OnRowCommand

Raises the RowCommand event.

System_CAPS_protmethod OnRowCreated

Raises the RowCreated event.

System_CAPS_protmethod OnRowDataBound

Raises the RowDataBound event.

System_CAPS_protmethod OnRowDeleted

Raises the RowDeleted event.

System_CAPS_protmethod OnRowDeleting

Raises the RowDeleting event.

System_CAPS_protmethod OnRowEditing

Raises the RowEditing event.

System_CAPS_protmethod OnRowUpdated

Raises the RowUpdated event.

System_CAPS_protmethod OnRowUpdating

Raises the RowUpdating event.

System_CAPS_protmethod OnSelectedIndexChanged

Raises the SelectedIndexChanged event.

System_CAPS_protmethod OnSelectedIndexChanging

Raises the SelectedIndexChanging event.

System_CAPS_protmethod OnSorted

Raises the Sorted event.

System_CAPS_protmethod OnSorting

Raises the Sorting event.

System_CAPS_protmethod OnUnload

Raises the Unload event.(Inherited from Control.)

System_CAPS_protmethod OpenFile

Gets a Stream used to read a file.(Inherited from Control.)

System_CAPS_protmethod PerformDataBinding

This API supports the product infrastructure and is not intended to be used directly from your code. Binds the specified data source to the GridView control.(Overrides CompositeDataBoundControlPerformDataBinding.)

System_CAPS_protmethod PerformSelect

Retrieves data from the associated data source.(Inherited from DataBoundControl.)

System_CAPS_protmethod PrepareControlHierarchy

This API supports the product infrastructure and is not intended to be used directly from your code. Establishes the control hierarchy.

System_CAPS_protmethod RaiseBubbleEvent

Assigns any sources of the event and its information to the control's parent.(Inherited from Control.)

System_CAPS_protmethod RaiseCallbackEvent

Creates the arguments for the callback handler in the GetCallbackEventReference method.

System_CAPS_protmethod RaisePostBackEvent

Raises the appropriate events for the GridView control when it posts back to the server.

System_CAPS_protmethod RemovedControl

Called after a child control is removed from the collection of the Control object.(Inherited from Control.)

System_CAPS_protmethod Render

This API supports the product infrastructure and is not intended to be used directly from your code. Renders the Web server control content to the client's browser using the specified System.Web.UIHtmlTextWriter object.(Overrides WebControlRender.)

System_CAPS_pubmethod RenderBeginTag

Renders the HTML opening tag of the control to the specified writer. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_protmethod RenderChildren

Outputs the content of a server control's children to a provided HtmlTextWriter object, which writes the content to be rendered on the client.(Inherited from Control.)

System_CAPS_protmethod RenderContents

Renders the contents of the control to the specified writer. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_pubmethod RenderControl

Outputs server control content to a provided HtmlTextWriter object and stores tracing information about the control if tracing is enabled.(Inherited from Control.)

System_CAPS_protmethod RenderControl

Outputs server control content to a provided HtmlTextWriter object using a provided ControlAdapter object.(Inherited from Control.)

System_CAPS_pubmethod RenderEndTag

Renders the HTML closing tag of the control into the specified writer. This method is used primarily by control developers.(Inherited from WebControl.)

System_CAPS_protmethod ResolveAdapter

Gets the control adapter responsible for rendering the specified control.(Inherited from Control.)

System_CAPS_pubmethod ResolveClientUrl

Gets a URL that can be used by the browser.(Inherited from Control.)

System_CAPS_pubmethod ResolveUrl

Converts a URL into one that is usable on the requesting client.(Inherited from Control.)

System_CAPS_protmethod SaveControlState

This API supports the product infrastructure and is not intended to be used directly from your code. Saves the state of the properties in the GridView control that need to be persisted, even when the property is set to false.(Overrides ControlSaveControlState.)

System_CAPS_protmethod SaveViewState

This API supports the product infrastructure and is not intended to be used directly from your code. Loads the previously saved view state of the GridView control.(Overrides DataBoundControlSaveViewState.)

System_CAPS_pubmethod SelectRow

Selects the row to edit in a GridView control.

System_CAPS_protmethod SetDesignModeState

Sets design-time data for a control.(Inherited from Control.)

System_CAPS_pubmethod SetEditRow

Puts a row in edit mode in a GridView control by using the specified row index.

System_CAPS_pubmethod SetPageIndex

Sets the page index of the GridView control by using the row index.

System_CAPS_pubmethod SetRenderMethodDelegate

This API supports the product infrastructure and is not intended to be used directly from your code. Assigns an event handler delegate to render the server control and its content into its parent control.(Inherited from Control.)

System_CAPS_pubmethod SetTraceData

Sets trace data for design-time tracing of rendering data, using the trace data key and the trace data value.(Inherited from Control.)

System_CAPS_pubmethod SetTraceData

Sets trace data for design-time tracing of rendering data, using the traced object, the trace data key, and the trace data value.(Inherited from Control.)

System_CAPS_pubmethod Sort

Sorts the GridView control based on the specified sort expression and direction.

System_CAPS_pubmethod ToString

Returns a string that represents the current object.(Inherited from Object.)

System_CAPS_protmethod TrackViewState

This API supports the product infrastructure and is not intended to be used directly from your code. Tracks view-state changes to the GridView control so they can be stored in the control's System.Web.UIStateBag object. This object is accessible through the property.(Overrides DataBoundControlTrackViewState.)

System_CAPS_pubmethod UpdateRow

Updates the record at the specified row index using the field values of the row.

System_CAPS_protmethod ValidateDataSource

Verifies that the object a data-bound control binds to is one it can work with.(Inherited from DataBoundControl.)

Events
NameDescription
System_CAPS_pubevent CallingDataMethods

Occurs when data methods are being called.(Inherited from DataBoundControl.)

System_CAPS_pubevent CreatingModelDataSource

Occurs when the ModelDataSource object is being created.(Inherited from DataBoundControl.)

System_CAPS_pubevent DataBinding

Occurs when the server control binds to a data source.(Inherited from Control.)

System_CAPS_pubevent DataBound

Occurs after the server control binds to a data source.(Inherited from BaseDataBoundControl.)

System_CAPS_pubevent Disposed

Occurs when a server control is released from memory, which is the last stage of the server control lifecycle when an ASP.NET page is requested.(Inherited from Control.)

System_CAPS_pubevent Init

Occurs when the server control is initialized, which is the first step in its lifecycle.(Inherited from Control.)

System_CAPS_pubevent Load

Occurs when the server control is loaded into the Page object.(Inherited from Control.)

System_CAPS_pubevent PageIndexChanged

Occurs when one of the pager buttons is clicked, but after the GridView control handles the paging operation.

System_CAPS_pubevent PageIndexChanging

Occurs when one of the pager buttons is clicked, but before the GridView control handles the paging operation.

System_CAPS_pubevent PreRender

Occurs after the Control object is loaded but prior to rendering.(Inherited from Control.)

System_CAPS_pubevent RowCancelingEdit

Occurs when the Cancel button of a row in edit mode is clicked, but before the row exits edit mode.

System_CAPS_pubevent RowCommand

Occurs when a button is clicked in a GridView control.

System_CAPS_pubevent RowCreated

Occurs when a row is created in a GridView control.

System_CAPS_pubevent RowDataBound

Occurs when a data row is bound to data in a GridView control.

System_CAPS_pubevent RowDeleted

Occurs when a row's Delete button is clicked, but after the GridView control deletes the row.

System_CAPS_pubevent RowDeleting

Occurs when a row's Delete button is clicked, but before the GridView control deletes the row.

System_CAPS_pubevent RowEditing

Occurs when a row's Edit button is clicked, but before the GridView control enters edit mode.

System_CAPS_pubevent RowUpdated

Occurs when a row's Update button is clicked, but after the GridView control updates the row.

System_CAPS_pubevent RowUpdating

Occurs when a row's Update button is clicked, but before the GridView control updates the row.

System_CAPS_pubevent SelectedIndexChanged

Occurs when a row's Select button is clicked, but after the GridView control handles the select operation.

System_CAPS_pubevent SelectedIndexChanging

Occurs when a row's Select button is clicked, but before the GridView control handles the select operation.

System_CAPS_pubevent Sorted

Occurs when the hyperlink to sort a column is clicked, but after the GridView control handles the sort operation.

System_CAPS_pubevent Sorting

Occurs when the hyperlink to sort a column is clicked, but before the GridView control handles the sort operation.

System_CAPS_pubevent Unload

Occurs when the server control is unloaded from memory.(Inherited from Control.)

Explicit Interface Implementations
NameDescription
System_CAPS_pubinterface System_CAPS_privmethod IAttributeAccessorGetAttribute

This API supports the product infrastructure and is not intended to be used directly from your code. Gets an attribute of the Web control with the specified name.(Inherited from WebControl.)

System_CAPS_pubinterface System_CAPS_privmethod IAttributeAccessorSetAttribute

Sets an attribute of the Web control to the specified name and value.(Inherited from WebControl.)

System_CAPS_pubinterface System_CAPS_privmethod ICallbackEventHandlerGetCallbackResult

This API supports the product infrastructure and is not intended to be used directly from your code. Returns the result of a callback event that targets a control.

System_CAPS_pubinterface System_CAPS_privmethod ICallbackEventHandlerRaiseCallbackEvent

This API supports the product infrastructure and is not intended to be used directly from your code. Creates the arguments for the callback handler in the GetCallbackEventReference method.

System_CAPS_pubinterface System_CAPS_privmethod IControlDesignerAccessorGetDesignModeState

For a description of this member, see IControlDesignerAccessorGetDesignModeState.(Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privmethod IControlDesignerAccessorSetDesignModeState

For a description of this member, see IControlDesignerAccessorSetDesignModeState. (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privmethod IControlDesignerAccessorSetOwnerControl

This API supports the product infrastructure and is not intended to be used directly from your code. For a description of this member, see IControlDesignerAccessorSetOwnerControl. (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privmethod IParserAccessorAddParsedSubObject

For a description of this member, see IParserAccessorAddParsedSubObject. (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privmethod IPostBackEventHandlerRaisePostBackEvent

This API supports the product infrastructure and is not intended to be used directly from your code. Raises the appropriate events for the GridView control when it posts back to the server.

System_CAPS_pubinterface System_CAPS_privmethod ICallbackContainerGetCallbackScript

This API supports the product infrastructure and is not intended to be used directly from your code. Creates the callback script for a button that performs a sorting operation.

System_CAPS_pubinterface System_CAPS_privmethod IPostBackContainerGetPostBackOptions

This API supports the product infrastructure and is not intended to be used directly from your code. Creates a PostBackOptions object that represents the postback behavior of the specified button control.

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

This API supports the product infrastructure and is not intended to be used directly from your code. Gets the data values that are used to uniquely identify each instance of a data-bound control when ASP.NET generates the value.

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see . (Inherited from Control.)

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the names of the primary key fields for the items displayed in a data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the table that is exposed by the data source control to bind to the data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the data source object from which the data-bound control retrieves the list of data items.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the ID of the data source from which the data-bound control retrieves the list of data items.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the data source object from which the data-bound control retrieves the list of data items.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the names of the data fields whose values are appended to the property value to uniquely identify each instance of a data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets a collection of objects that represent the value in a data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets a value that indicates whether the selection of a row is based on index or on data-key values.

System_CAPS_pubinterface System_CAPS_privproperty

Gets the object that contains the data key value for the selected row in a data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the index of the selected row in the data-bound control.

System_CAPS_pubinterface System_CAPS_privproperty

Gets or sets the control that automatically generates the columns for a data-bound control for use by ASP.NET Dynamic Data.

System_CAPS_pubinterface System_CAPS_privproperty

For a description of this member, see .

Extension Methods
NameDescription
System_CAPS_pubmethod EnableDynamicData

Overloaded. Enables Dynamic Data behavior for the specified data control.(Defined by DataControlExtensions.)

System_CAPS_pubmethod EnableDynamicData

Overloaded. Enables Dynamic Data behavior for the specified data control.(Defined by DataControlExtensions.)

System_CAPS_pubmethod EnableDynamicData

Overloaded. Enables Dynamic Data behavior for the specified data control.(Defined by DataControlExtensions.)

System_CAPS_pubmethod EnablePersistedSelection

Obsolete.Enables selection to be persisted in data controls that support selection and paging.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod FindDataSourceControl

Returns the data source that is associated with the data control for the specified control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod FindFieldTemplate

Returns the field template for the specified column in the specified control's naming container.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod FindMetaTable

Returns the metatable object for the containing data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod GetDefaultValues

Overloaded. Gets the collection of the default values for the specified data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod GetMetaTable

Overloaded. Gets the table metadata for the specified data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod SetMetaTable

Overloaded. Sets the table metadata for the specified data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod SetMetaTable

Overloaded. Sets the table metadata and default value mapping for the specified data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod SetMetaTable

Overloaded. Sets the table metadata and default value mapping for the specified data control.(Defined by DynamicDataExtensions.)

System_CAPS_pubmethod TryGetMetaTable

Overloaded. Determines whether table metadata is available.(Defined by DynamicDataExtensions.)

Remarks

In this topic:

  • Introduction

  • Column Fields

  • Binding to Data

  • Data Operations

  • Customizing the User Interface

  • Events

  • Accessibility

  • Declarative Syntax

Introduction

The GridView control is used to display the values of a data source in a table. Each column represents a field, while each row represents a record. The GridView control supports the following features:

  • Binding to data source controls, such as SqlDataSource.

  • Built-in sort capabilities.

  • Built-in update and delete capabilities.

  • Built-in paging capabilities.

  • Built-in row selection capabilities.

  • Programmatic access to the GridView object model to dynamically set properties, handle events, and so on.

  • Multiple key fields.

  • Multiple data fields for the hyperlink columns.

  • Customizable appearance through themes and styles.

  • To learn about the other data-bound controls that are available in ASP.NET, see Data-Bound Web Server Controls.

System_CAPS_noteNote

If you are familiar with the DataGrid control from the .NET Framework version 1.0, the GridView control is the successor to the DataGrid control.

Column Fields

Each column in the GridView control is represented by a DataControlField object. By default, the property is set to true, which creates an AutoGeneratedField object for each field in the data source. Each field is then rendered as a column in the GridView control in the order that each field appears in the data source.

You can also manually control which column fields appear in the GridView control by setting the property to false and then defining your own column field collection. Different column field types determine the behavior of the columns in the control. The following table lists the different column field types that can be used.

Column field type

Description

BoundField

Displays the value of a field in a data source. This is the default column type of the GridView control.

ButtonField

Displays a command button for each item in the GridView control. This enables you to create a column of custom button controls, such as the Add or the Remove button.

CheckBoxField

Displays a check box for each item in the GridView control. This column field type is commonly used to display fields with a Boolean value.

CommandField

Displays predefined command buttons to perform select, edit, or delete operations.

HyperLinkField

Displays the value of a field in a data source as a hyperlink. This column field type enables you to bind a second field to the hyperlink's URL.

ImageField

Displays an image for each item in the GridView control.

TemplateField

Displays user-defined content for each item in the GridView control according to a specified template. This column field type enables you to create a custom column field.

To define a column field collection declaratively, first add opening and closing <Columns> tags between the opening and closing tags of the GridView control. Next, list the column fields that you want to include between the opening and closing <Columns> tags. The columns specified are added to the collection in the order listed. The collection stores all the column fields in the control and enables you to programmatically manage the column fields in the GridView control.

Explicitly declared column fields can be displayed in combination with automatically generated column fields. When both are used, explicitly declared column fields are rendered first, followed by the automatically generated column fields.

System_CAPS_noteNote

Automatically generated column fields are not added to the collection.

Binding to Data

The GridView control can be bound to a data source control (such as the SqlDataSource control or ObjectDataSource control) or to any data source collection that implements the System.CollectionsIEnumerable interface, such as System.DataDataView, System.CollectionsArrayList, System.Collections.GenericList, or other collection types. Use one of the following methods to bind the GridView control to the appropriate data source type:

  • To bind to a data source control, set the property of the GridView control to the value of the data source control. The GridView control automatically binds to the specified data source control and can take advantage of the data source control's capabilities to perform sorting, updating, deleting, and paging. This is the preferred method to bind to data.

  • To bind to a data source that implements the System.CollectionsIEnumerable interface, programmatically set the property of the GridView control to the data source and then call the DataBind method. When using this method, the GridView control does not provide built-in sort, update, delete, and paging functionality. You need to provide this functionality by using the appropriate event.

For more information about data binding, see ASP.NET Data Access Content Map.

System_CAPS_noteNote

This control can be used to display user input, which might include malicious client script. Check any information that is sent from a client for executable script, SQL statements, or other code before displaying it in your application. Whenever possible, it is strongly recommended that values are HTML-encoded before they are displayed in this control (the BoundField class HTML-encodes values by default). ASP.NET provides an input request validation feature to block script and HTML in user input. Validation server controls are also provided to assess user input. For more information, see Introduction to the Validation Controls.

Data Operations

The GridView control provides many built-in capabilities that allow the user to sort, update, delete, select, and page through items in the control. When the GridView control is bound to a data source control, the GridView control can take advantage of the data source control's capabilities and provide automatic sort, update, and delete functionality.

System_CAPS_noteNote

The GridView control can provide support for sorting, updating, and deleting with other types of data sources. However, you will need to provide an appropriate event handler with the implementation for these operations.

Sorting allows the user to sort the items in the GridView control with respect to a specific column by clicking on the column's header. To enable sorting, set the property to true.

The automatic updating, deleting, and selection functionalities are enabled when a button in a ButtonField or TemplateField column field, with a command name of "Edit", "Delete", and "Select", respectively, is clicked. The GridView control can automatically add a CommandField column field with an Edit, Delete, or Select button if the , , or property is set to true, respectively.

System_CAPS_noteNote

Inserting records into the data source is not directly supported by the GridView control. However, it is possible to insert records by using the GridView control in conjunction with the DetailsView or FormView control. For more information, see DetailsView or FormView, respectively.

Instead of displaying all the records in the data source at the same time, the GridView control can automatically break the records up into pages. To enable paging, set the property to true.

System_CAPS_noteNote

The GridView control is re-created on postback based on the information that is stored in . If the GridView control includes a TemplateField or a CommandField with the property set to true, then the property must also be set to true to ensure that concurrent data operations, such as updates and deletes, apply to the appropriate row.

Customizing the User Interface

You can customize the appearance of the GridView control by setting the style properties for the different parts of the control. The following table lists the different style properties.

Style property

Description

The style settings for the alternating data rows in the GridView control. When this property is set, the data rows are displayed alternating between the settings and the settings.

The style settings for the row being edited in the GridView control.

The style settings for the empty data row displayed in the GridView control when the data source does not contain any records.

The style settings for the footer row of the GridView control.

The style settings for the header row of the GridView control.

The style settings for the pager row of the GridView control.

The style settings for the data rows in the GridView control. When the property is also set, the data rows are displayed alternating between the settings and the settings.

The style settings for the selected row in the GridView control.

The style setting for the data column the data is sorted by in the GridView control. When this style is set, the style (for example, highlighted column) is applied to cells when the data is sorted in ascending order.

The style setting for the data column the data is sorted by in the GridView control. When this style is set, an arrow indicating the data is sorted ascending is placed on the header of the GridView control when the data is sorted in ascending order.

The style setting for the data column the data is sorted by in the GridView control. When this style is set, the style (for example, highlighted column) is applied to cells when the data is sorted in descending order.

The style setting for the data column the data is sorted by in the GridView control. When this style is set, an arrow pointing down is placed on the header of the GridView when the data is sorted in descending order.

You can also show or hide different parts of the control. The following table lists the properties that control which parts are shown or hidden.

Property

Description

Shows or hides the footer section of the GridView control.

Shows or hides the header section of the GridView control.

Events

The GridView control provides several events that you can program against. This enables you to run a custom routine whenever an event occurs. The following table lists the events that are supported by the GridView control.

Event

Description

PageIndexChanged

Occurs when one of the pager buttons is clicked, but after the GridView control handles the paging operation. This event is commonly used when you need to perform a task after the user navigates to a different page in the control.

PageIndexChanging

Occurs when one of the pager buttons is clicked, but before the GridView control handles the paging operation. This event is often used to cancel the paging operation.

RowCancelingEdit

Occurs when a row's Cancel button is clicked, but before the GridView control exits edit mode. This event is often used to stop the canceling operation.

RowCommand

Occurs when a button is clicked in the GridView control. This event is often used to perform a task when a button is clicked in the control.

RowCreated

Occurs when a new row is created in the GridView control. This event is often used to modify the contents of a row when the row is created.

RowDataBound

Occurs when a data row is bound to data in the GridView control. This event is often used to modify the contents of a row when the row is bound to data.

RowDeleted

Occurs when a row's Delete button is clicked, but after the GridView control deletes the record from the data source. This event is often used to check the results of the delete operation.

RowDeleting

Occurs when a row's Delete button is clicked, but before the GridView control deletes the record from the data source. This event is often used to cancel the deleting operation.

RowEditing

Occurs when a row's Edit button is clicked, but before the GridView control enters edit mode. This event is often used to cancel the editing operation.

RowUpdated

Occurs when a row's Update button is clicked, but after the GridView control updates the row. This event is often used to check the results of the update operation.

RowUpdating

Occurs when a row's Update button is clicked, but before the GridView control updates the row. This event is often used to cancel the updating operation.

SelectedIndexChanged

Occurs when a row's Select button is clicked, but after the GridView control handles the select operation. This event is often used to perform a task after a row is selected in the control.

SelectedIndexChanging

Occurs when a row's Select button is clicked, but before the GridView control handles the select operation. This event is often used to cancel the selection operation.

Sorted

Occurs when the hyperlink to sort a column is clicked, but after the GridView control handles the sort operation. This event is commonly used to perform a task after the user clicks a hyperlink to sort a column.

Sorting

Occurs when the hyperlink to sort a column is clicked, but before the GridView control handles the sort operation. This event is often used to cancel the sorting operation or to perform a custom sorting routine.

Accessibility

For information about how to configure this control so that it generates markup that conforms to accessibility standards, see Accessibility in Visual Studio and ASP.NET and ASP.NET Controls and Accessibility.

Declarative Syntax
<asp:GridView
    AccessKey="string"
    AllowPaging="True|False"
    AllowSorting="True|False"
    AutoGenerateColumns="True|False"
    AutoGenerateDeleteButton="True|False"
    AutoGenerateEditButton="True|False"
    AutoGenerateSelectButton="True|False"
    BackColor="color name|#dddddd"
    BackImageUrl="uri"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    Caption="string"
    CaptionAlign="NotSet|Top|Bottom|Left|Right"
    CellPadding="integer"
    CellSpacing="integer"
    CssClass="string"
    DataKeyNames="string"
    DataMember="string"
    DataSource="string"
    DataSourceID="string"
    EditIndex="integer"
    EmptyDataText="string"
    Enabled="True|False"
    EnableSortingAndPagingCallbacks="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
        Large|X-Large|XX-Large"
    Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    GridLines="None|Horizontal|Vertical|Both"
    Height="size"
    HorizontalAlign="NotSet|Left|Center|Right|Justify"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDataBound="DataBound event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPageIndexChanged="PageIndexChanged event handler"
    OnPageIndexChanging="PageIndexChanging event handler"
    OnPreRender="PreRender event handler"
    OnRowCancelingEdit="RowCancelingEdit event handler"
    OnRowCommand="RowCommand event handler"
    OnRowCreated="RowCreated event handler"
    OnRowDataBound="RowDataBound event handler"
    OnRowDeleted="RowDeleted event handler"
    OnRowDeleting="RowDeleting event handler"
    OnRowEditing="RowEditing event handler"
    OnRowUpdated="RowUpdated event handler"
    OnRowUpdating="RowUpdating event handler"
    OnSelectedIndexChanged="SelectedIndexChanged event handler"
    OnSelectedIndexChanging="SelectedIndexChanging event handler"
    OnSorted="Sorted event handler"
    OnSorting="Sorting event handler"
    OnUnload="Unload event handler"
    PageIndex="integer"
    PagerSettings-FirstPageImageUrl="uri"
    PagerSettings-FirstPageText="string"
    PagerSettings-LastPageImageUrl="uri"
    PagerSettings-LastPageText="string"
    PagerSettings-Mode="NextPrevious|Numeric|NextPreviousFirstLast|
        NumericFirstLast"
    PagerSettings-NextPageImageUrl="uri"
    PagerSettings-NextPageText="string"
    PagerSettings-PageButtonCount="integer"
    PagerSettings-Position="Bottom|Top|TopAndBottom"
    PagerSettings-PreviousPageImageUrl="uri"
    PagerSettings-PreviousPageText="string"
    PagerSettings-Visible="True|False"
    PageSize="integer"
    RowHeaderColumn="string"
    runat="server"
    SelectedIndex="integer"
    ShowFooter="True|False"
    ShowHeader="True|False"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    ToolTip="string"
    UseAccessibleHeader="True|False"
    Visible="True|False"
    Width="size"
>
        <AlternatingRowStyle />
        <Columns>
                <asp:BoundField
                    AccessibleHeaderText="string"
                    ApplyFormatInEditMode="True|False"
                    ConvertEmptyStringToNull="True|False"
                    DataField="string"
                    DataFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    HtmlEncode="True|False"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:BoundField>
                <asp:ButtonField
                    AccessibleHeaderText="string"
                    ButtonType="Button|Image|Link"
                    CausesValidation="True|False"
                    CommandName="string"
                    DataTextField="string"
                    DataTextFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    ImageUrl="uri"
                    InsertVisible="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Text="string"
                    ValidationGroup="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:ButtonField>
                <asp:CheckBoxField
                    AccessibleHeaderText="string"
                    DataField="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Text="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:CheckBoxField>
                <asp:CommandField
                    AccessibleHeaderText="string"
                    ButtonType="Button|Image|Link"
                    CancelImageUrl="uri"
                    CancelText="string"
                    CausesValidation="True|False"
                    DeleteImageUrl="uri"
                    DeleteText="string"
                    EditImageUrl="uri"
                    EditText="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertImageUrl="uri"
                    InsertText="string"
                    InsertVisible="True|False"
                    NewImageUrl="uri"
                    NewText="string"
                    SelectImageUrl="uri"
                    SelectText="string"
                    ShowCancelButton="True|False"
                    ShowDeleteButton="True|False"
                    ShowEditButton="True|False"
                    ShowHeader="True|False"
                    ShowInsertButton="True|False"
                    ShowSelectButton="True|False"
                    SortExpression="string"
                    UpdateImageUrl="uri"
                    UpdateText="string"
                    ValidationGroup="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:CommandField>
                <asp:DynamicField
                    AccessibleHeaderText="string"
                    ApplyFormatInEditMode="True|False"
                    ConvertEmptyStringToNull="True|False"
                    DataField="string"
                    DataFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    HtmlEncode="True|False"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    ShowHeader="True|False"
                    UIHint="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:DynamicField>
                <asp:HyperLinkField
                    AccessibleHeaderText="string"
                    DataNavigateUrlFields="string"
                    DataNavigateUrlFormatString="string"
                    DataTextField="string"
                    DataTextFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    NavigateUrl="uri"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Target="string|_blank|_parent|_search|_self|_top"
                    Text="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:HyperLinkField>
                <asp:ImageField
                    AccessibleHeaderText="string"
                    AlternateText="string"
                    ConvertEmptyStringToNull="True|False"
                    DataAlternateTextField="string"
                    DataAlternateTextFormatString="string"
                    DataImageUrlField="string"
                    DataImageUrlFormatString="string"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    NullDisplayText="string"
                    NullImageUrl="uri"
                    ReadOnly="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                        <ControlStyle />
                        <FooterStyle />
                        <HeaderStyle />
                        <ItemStyle />
                </asp:ImageField>
                <asp:TemplateField
                    AccessibleHeaderText="string"
                    ConvertEmptyStringToNull="True|False"
                    FooterText="string"
                    HeaderImageUrl="uri"
                    HeaderText="string"
                    InsertVisible="True|False"
                    ShowHeader="True|False"
                    SortExpression="string"
                    Visible="True|False"
>
                            <ControlStyle />
                            <FooterStyle />
                            <HeaderStyle />
                            <ItemStyle />
                        <AlternatingItemTemplate>
                            <!-- child controls -->
                        </AlternatingItemTemplate>
                        <EditItemTemplate>
                            <!-- child controls -->
                        </EditItemTemplate>
                        <FooterTemplate>
                            <!-- child controls -->
                        </FooterTemplate>
                        <HeaderTemplate>
                            <!-- child controls -->
                        </HeaderTemplate>
                        <InsertItemTemplate>
                            <!-- child controls -->
                        </InsertItemTemplate>
                        <ItemTemplate>
                            <!-- child controls -->
                        </ItemTemplate>
                </asp:TemplateField>
        </Columns>
        <EditRowStyle />
        <EmptyDataRowStyle />
        <EmptyDataTemplate>
            <!-- child controls -->
        </EmptyDataTemplate>
        <FooterStyle />
        <HeaderStyle />
        <PagerSettings
            FirstPageImageUrl="uri"
            FirstPageText="string"
            LastPageImageUrl="uri"
            LastPageText="string"
            Mode="NextPrevious|Numeric|NextPreviousFirstLast|
                NumericFirstLast"
            NextPageImageUrl="uri"
            NextPageText="string"
            OnPropertyChanged="PropertyChanged event handler"
            PageButtonCount="integer"
            Position="Bottom|Top|TopAndBottom"
            PreviousPageImageUrl="uri"
            PreviousPageText="string"
            Visible="True|False"
        />
        <PagerStyle />
        <PagerTemplate>
            <!-- child controls -->
        </PagerTemplate>
        <RowStyle />
        <SelectedRowStyle />
</asp:GridView>
Examples

A Visual Studio Web site project with source code is available to accompany this topic: Download.

The following example demonstrates how use the GridView control to display the values from the Customers table of the AdventureWorksLT sample database in Microsoft SQL Server. The values are retrieved using a SqlDataSource control.

<asp:sqldatasource id="CustomersSource"
  selectcommand="SELECT CustomerID, CompanyName, FirstName, LastName FROM SalesLT.Customer"
  connectionstring="<%$ ConnectionStrings:AWLTConnectionString %>" 
  runat="server"/>

<asp:gridview id="CustomersGridView" 
  datasourceid="CustomersSource" 
  autogeneratecolumns="False"
  emptydatatext="No data available." 
  allowpaging="True" 
  runat="server" DataKeyNames="CustomerID">
    <Columns>
        <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
            InsertVisible="False" ReadOnly="True" SortExpression="CustomerID" />
        <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" 
            SortExpression="CompanyName" />
        <asp:BoundField DataField="FirstName" HeaderText="FirstName" 
            SortExpression="FirstName" />
        <asp:BoundField DataField="LastName" HeaderText="LastName" 
            SortExpression="LastName" />
    </Columns>
</asp:gridview>
<asp:sqldatasource id="CustomersSource"
  selectcommand="SELECT CustomerID, CompanyName, FirstName, LastName FROM SalesLT.Customer"
  connectionstring="<%$ ConnectionStrings:AWLTConnectionString %>" 
  runat="server"/>

<asp:gridview id="CustomersGridView" 
  datasourceid="CustomersSource" 
  autogeneratecolumns="False"
  emptydatatext="No data available." 
  allowpaging="True" 
  runat="server" DataKeyNames="CustomerID">
    <Columns>
        <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" 
            InsertVisible="False" ReadOnly="True" SortExpression="CustomerID" />
        <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" 
            SortExpression="CompanyName" />
        <asp:BoundField DataField="FirstName" HeaderText="FirstName" 
            SortExpression="FirstName" />
        <asp:BoundField DataField="LastName" HeaderText="LastName" 
            SortExpression="LastName" />
    </Columns>
</asp:gridview>

The following example demonstrates how to use the GridView control and a LinqDataSource control so that you can edit records.

<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>

For an example demonstrating how to access values in cells, see GridViewRow.

Version Information
.NET Framework
Available since 2.0
Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top