DataGridViewCell.Value Property

Definition

Gets or sets the value associated with this cell.

public:
 property System::Object ^ Value { System::Object ^ get(); void set(System::Object ^ value); };
[System.ComponentModel.Browsable(false)]
public object Value { get; set; }
[System.ComponentModel.Browsable(false)]
public object? Value { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.Value : obj with get, set
Public Property Value As Object

Property Value

Gets or sets the data to be displayed by the cell. The default is null.

Attributes

Exceptions

RowIndex is outside the valid range of 0 to the number of rows in the control minus 1.

ColumnIndex is less than 0, indicating that the cell is a row header cell.

Examples

The following code example shows how to update a cell's contents with the Value property. This example is part of a larger code example provided in How to: Manipulate Rows in the Windows Forms DataGridView Control.

// Give cheescake excellent rating.
void Button8_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   UpdateStars( dataGridView->Rows[ 4 ], L"******************" );
}

int ratingColumn;
void UpdateStars( DataGridViewRow^ row, String^ stars )
{
   row->Cells[ ratingColumn ]->Value = stars;
   
   // Resize the column width to account for the new value.
   row->DataGridView->AutoResizeColumn( ratingColumn, DataGridViewAutoSizeColumnMode::DisplayedCells );
}
// Give cheescake excellent rating.
private void Button8_Click(object sender,
    System.EventArgs e)
{
    UpdateStars(dataGridView.Rows[4], "******************");
}

int ratingColumn = 3;

private void UpdateStars(DataGridViewRow row, string stars)
{

    row.Cells[ratingColumn].Value = stars;

    // Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, 
        DataGridViewAutoSizeColumnMode.DisplayedCells);
}
' Give cheescake excellent rating.
Private Sub Button8_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Button8.Click

    UpdateStars(dataGridView.Rows(4), "******************")
End Sub

Private ratingColumn As Integer = 3

Private Sub UpdateStars(ByVal row As DataGridViewRow, _
    ByVal stars As String)

    row.Cells(ratingColumn).Value = stars

    ' Resize the column width to account for the new value.
    row.DataGridView.AutoResizeColumn(ratingColumn, _
        DataGridViewAutoSizeColumnMode.DisplayedCells)

End Sub

Remarks

When you assign a different value to a cell, the CellValueChanged event of the DataGridView control is raised.

The Value property is the actual data object contained by the cell, whereas the FormattedValue property is the formatted representation of the data. The ValueType and FormattedValueType properties correspond to the data types of these values, respectively.

When you set the Value property, the specified value is not automatically converted from a formatted, display value to an underlying cell value. For example, the DataGridViewCellStyle in effect for the cell is ignored, so setting Value to DataGridViewCellStyle.NullValue does not result in a property value of DataGridViewCellStyle.DataSourceNullValue.

Applies to

See also