내 표는DataGridview에서 행을 제거하는 방법은 무엇입니까?</p> <pre><code>Joe Sue 200 </code></pre> <p>한 행 :
Joe Jackson 200
Jackson Sue 200
내 코드
for (int i = 0; i < dataGridView1.RowCount; i++)
{
for (int j = 1; j < dataGridView1.RowCount; j++)
{
if (dataGridView1.Rows[i].Cells[1].Value == dataGridView1.Rows[j].Cells[0].Value)
{
int miktar_alici = Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value);
int miktar_satici = Convert.ToInt32(dataGridView1.Rows[j].Cells[2].Value);
if (miktar_alici == miktar_satici)
{
dataGridView1.Rows[j].Cells[0].Value = dataGridView1.Rows[i].Cells[0].Value;
dataGridView1.Rows.RemoveAt(dataGridView1.Rows[i].Index);
}
}
}
}
는이 같은 출력 뭔가 내 코드를 원하는 것입니다. 그러나 코드에는 "RemoveAt"줄의 오류가 있습니다. 어떻게 해결할 수 있습니까?
어떤 오류가 발생합니까? 아니면 야생 추측을하기를 원하십니까? –
'RowCount'는 행을 제거 할 때마다 감소하지만 iterator (i, j)는 계속 증가하므로 결국 존재하지 않는 행 인덱스에 액세스하려고 시도합니다. 또한, 당신은 중첩 된 루프에서 셀을 반복하고 행을 다시 반복 할 필요가 있다고 생각합니다. – Crowcoder
내 오류 : System.Windows.Forms.dll에서 'System.InvalidOperationException'형식의 처리되지 않은 예외가 발생했습니다. 추가 정보 : 저장하지 않은 새 줄을 삭제할 수 없습니다. –