您好我正在尝试将选定的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:索引0的值不是 System.Windows.Forms.CurrencyManager.get_Item(Int32index)在 System.Windows.Forms.DataGridView.DataGridViewDataConnection.GetError(Int32rowIndex) 要替换此默认对话框,请处理数据错误事件。
并逐个清空单元格并弹出所有时间错误消息。谁能告诉我如何纠正它?