나는 이것에 대해 아직 초보자입니다. 선택한 행에 원하는 문자열이 포함되어 있다면 여러 조건을 선택하려고합니다. 이미 얻었습니다. 값,하지만 다른 행에서 동일한 값을 가져 오려고하면 개체 참조가 개체의 인스턴스로 설정되지 않은 상태에서 throw합니다. 내가 원하는 행을 이미 얻었 으면 무엇을하려는 것입니다. , 행을 제거하지 않고 셀을 지우고 싶습니다. 마우스 오른쪽 버튼 클릭 이벤트를 사용하고 있는데, 그 중 일부는 stackoverflow에서 발견되었습니다. 희망 당신은, 당신의 도움과 설명 주셔서 감사합니다 ... 여기 내 코드다중 선택하지만 개체 참조가 개체의 인스턴스로 설정되지 않았습니다
이해입니다 수있는 경우 (e.Button == MouseButtons.Right) {
rw = dgv_Jadwal_Sewa.HitTest(e.X, e.Y).RowIndex;
cellValueNota = (int)dgv_Jadwal_Sewa.Rows[rw].Cells[5].Value;
String cl = Convert.ToString(cellValueNota);
dgv_Jadwal_Sewa.Rows[rw].Selected = true;
ContextMenuStrip m = new ContextMenuStrip();
m.Items.Add("Cancel");
m.ItemClicked += new ToolStripItemClickedEventHandler(m_ItemClicked);
m.Show(dgv_Jadwal_Sewa, new Point(e.X, e.Y));
}
public void cancel_Booking()
{
String cl = Convert.ToString(cellValueNota);
foreach (DataGridViewRow row in dgv_Jadwal_Sewa.Rows)
{
if (row.Cells[5].Value.ToString().ToString().Contains(cl))
{
rw = row.Index;
//row.Selected = true;
dgv_Jadwal_Sewa.Rows[rw].Selected = true;
break;
}
}
}
는이 라인에 던져의 (row.Cells[5].Value.ToString().ToString().Contains(cl))
Cells에 6 개의 개체가 있는지 완전히 확신합니까? 또는 Cells가 null이 아닌 경우? 그것을 디버그하십시오. Double ToString() 제거 : D – wudzik
예 6 개의 객체가 있다고 확신합니다. double toString()을 제거했지만 여전히 컨텍스트 메뉴를 클릭하면 동일한 것을 던져 버립니다. –
어느 필드가 null입니까? VS 디버거를 사용하는 경우 텍스트 편집기에서 변수를 가리키면 확인할 수 있습니다 – wudzik