在单元格格式中,当使用BindingList时,e.value属性为空

本文关键字:value 属性 BindingList 格式 单元格 | 更新日期: 2023-09-27 18:03:53

我是datagridview的新手。我有数据网格单元格式化事件。当这个事件被触发时,e.Value将作为空值到来。如果我用Bindinglist绑定数据源,那么e.Value是Null,如果我直接与illist绑定,我得到正确的值。

private void Form1_Load(object sender, EventArgs e)
{
   IList<MyClass> myClassList = new List<MyClass>();
   myClassList.Add(new MyClass());
   myClassList.Add(new MyClass());
   BindingList<MyClass> myClassDS = new BindingList<MyClass>(myClassList);
   var source = new BindingSource(myClassDS, null);
   dataGridView1.DataSource = source; //e.Value is null here
   //dataGridView.DataSource = myClassList; //This is working fine
}
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
   //e.Value is null. here i should get current cell value.
}

在单元格格式中,当使用BindingList时,e.value属性为空

检查:

dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value