How to show set default value for DataGridViewComboBoxCell Value in winform?

前端 未结 2 1926
野的像风
野的像风 2021-01-04 20:37

I have a DataGridView having one DataGridViewComboBoxColumn and I have populated that ComboBox but after clear that DataGridView I hav

相关标签:
2条回答
  • 2021-01-04 21:27

    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.

    0 讨论(0)
  • 2021-01-04 21:38

    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";
          }
    }
    
    0 讨论(0)
提交回复
热议问题