When the DataKeyNames property is set, the GridView control automatically creates a DataKey object for each row in the control. The DataKey object contains the values of the field or fields specified in the DataKeyNames property. The DataKey objects are then added to the control's DataKeys collection. Use the DataKeys property to retrieve the DataKey object for a specific data row in the GridView control.
You can use the SelectedDataKey property to retrieve the DataKey object for the currently selected row. You can also use the SelectedValue property to retrieve the data key value for the currently selected row directly.