您好我正在尝试将选定的 datagridview 行添加到另一个 datagridview。
我正在使用 man 对象类。这是我的课。
class Man
{
private string _name;
public string name
{
set { _name = value; }
get { return _name; }
}
private string _address;
public string address
{
set { _address = value; }
get { return _address; }
}
}
我有两个列表。
List<Man> people= new List<Man>();
List<Man> people2 = new List<Man>();
public string tempname;
这是行点击事件的完整代码。
private void dataGridView1_Click(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.SelectedRows)
{
Man manobj = new Man();
manobj.name = Convert.ToString(row.Cells[0].Value);
tempname = Convert.ToString(row.Cells[0].Value);
manobj.address= Convert.ToString(row.Cells[1].Value);
//Adding the man object
people2.Add(manobj);
BindingSource manbind2= new BindingSource();
manbind2.DataSource = people2;
dataGridView2.DataSource = manbind2;
dataGridView1.Rows.RemoveAt(row.Index);
for (int i = 0; i < people.Count; i++)
{
Man tempman = people[i] as Man;
if (tempman.name == tempname)
{
people.Remove(tempman);
}
}
}
}
当我单击时,有时会收到此错误消息。
DataGridView 中出现以下异常。
System.indexOutOfRangeException:Index 0 在 System.Windows.Forms.CurrencyManager.get_Item(Int32index) 处没有值 System.Windows.Forms.DataGridView.DataGridViewDataConnection.GetError(Int32rowIndex) 要替换此默认对话框,请处理数据错误事件.
并且单元格被一一清空,并且一直弹出错误消息。谁能告诉我如何纠正它?