Question

I have a DataGridView having one DataGridViewComboBoxColumn and I have populated that ComboBox but after clear that DataGridView I have to set one default value for that ComboBox So please help me out.

Was it helpful?

Solution

You can do this in CellFormatting event

void dataGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
      if (e.ColumnIndex == 0) //Index of your DataGridViewComboBoxColumn 
      {
          e.Value = "Default Value";
      }
}

OTHER TIPS

I know this is an ancient post, but hopefully, I can help some people avoid my confusion.

Using CellFormatting is a loser because it calls it every time anything touches the cell. The result is that the value gets set back to the default constantly.

What worked for me was handling the DefaultValuesNeeded event like so:

private void OnGridDefaultValuesNeeded(object sender, DataGridViewRowEventArgs e)
{
    e.Row.Cells["Position"].Value = PositionEnum.Any;
}

This allowed me to set the default value, and lets the user change the value.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top