DataGridView에서 선택한 여러 행을 삭제하려고합니다. 아래 코드를 실행하면 선택한 행 중 일부만 삭제됩니다. 예를 들어 7 개의 행이 있고 5 개의 연속 행을 선택하고 삭제를 누르면 3 개만 삭제됩니다. DataGridView에서 여러 행을 삭제하는 방법
IEnumerable<DataGridViewRow> dgvrs = from dgvrws in dgvChemicalInv.Rows.Cast<DataGridViewRow>()
where dgvrws.Selected.Equals(true)
select dgvrws;
foreach (DataGridViewRow dgr in dgvrs)
{
dctchemri = dgr.Cells["DCT_CHEMRI"].Value.ToString();
index = dgvChemicalInv.CurrentRow.Index;
var chemObj = (from chmObj in DCTProjectNodeObj.Chemicals
where chmObj.DCTChemRI.Equals(dctchemri)
select chmObj).Single();
if (sqlCmd.Delete_Chems(this.projID, (csDCTChemicalObj)chemObj))
{
dgvChemicalInv.Rows.Remove(dgr);
}
if (dgvChemicalInv.RowCount > 0)
{
DCTProjectNodeObj.Chemicals.Remove((csDCTChemicalObj)chemObj);
}
else
{
DCTProjectNodeObj.Chemicals = new List<csDCTChemicalObj>();
DO_BtnSaveClickEvent();
}
}
는
이 가능성을 조사해 왔지만 SqlCE 데이터베이스에서 작동하지 않는 것 같습니다. –
SqlCE를 사용하고 있는지 몰랐습니다. 별로 경험이 없지만 SqlCE에서 정확히 작동하지 않는 것은 무엇입니까? – krs1
dataContext 클래스의 연결 및 설정. 나는이 블로그 [링크] (http://blogs.msdn.com/b/charlie/archive/2007/12/10/understanding-the-datacontext.aspx)와 함께 따라 갔다. –