我有以下DataGridView绑定到List:
List<Object> list = new List<Object>();
System.Windows.Forms.DataGridView dataGridView1;
dataGridView1.DataSource = new BindingSource(list, null);
dataGridView1.UserAddedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.dataGridView1_UserAddedRow);
void dataGridViewMilight_UserAddedRow(object sender, DataGridViewRowEventArgs e) {
// e.Row.DataBoundItem is always null?
}
如何获取添加到列表中的对象?
答案 0 :(得分:1)
我对绑定到DataView的DataGridView有类似的问题。我想在创建DataRow时为隐藏的文件提供默认值,但是从来没有任何绑定项。
我通过处理DataView引发的ListChanged事件(当事件的ListChangedType属性等于ItemAdded时)解决了该问题。如果您使用BindingList而不是列表,或者使用任何实现IBindingList的类,则可以处理同一事件。
答案 1 :(得分:0)
提供的 DataGridViewRowEventArgs 实例的行属性是新创建的行。
void dataGridViewMilight_UserAddedRow(object sender,
DataGridViewRowEventArgs e)
{
DataGridViewRow newRow = e.Row;
}