두 가지 양식이 있습니다. 하나는 MS Access의 데이터 원본과 함께 datagridview 컨트롤을 포함하고 있습니다. 데이터가 datagridview에 제대로 표시됩니다. 먼저 데이터 격자보기에서 셀을 선택한 다음 현재 선택한 셀의 행 인덱스를 가져옵니다. 접근 자 함수에서 행 인덱스를 사용합니다 (코드는 기본 형식입니다) :하나의 양식에서 다른 양식으로 데이터 읽기를 수행하는 C#
public String Name
{
get
{
return dataGridView1.Rows[selrow].Cells[1].Value.ToString();
}
}
selrow에는 현재 선택된 셀의 행 인덱스가 포함되어 있습니다. 다음으로, "Edit record"버튼을 클릭하면 제 2 폼이 모달 폼으로 표시됩니다. 나는 텍스트 상자에 위의 접근의 값을 표시 할, 그래서 코드는 다음과 같이 간다 (코드 2 형태) :
private void EditRecord_Load(object sender, EventArgs e)
{
CashLoan main = new CashLoan();
txtEName.Text = main.name;
}
하지만 실행 및 디버깅하려고 할 때,이 "인덱스를 얻을 수 범위를 벗어났습니다. 음수가 아니고 콜렉션의 크기보다 작아야합니다 매개 변수 이름 : index "내 접근 자 함수로 전달됩니다. 문제의 원인을 찾을 수없는 것 같습니다. 미리 감사드립니다.
그런 다음 올바르게 현재 활성 셀의 인덱스를 저장하지 않는
는 생성자에 매개 변수로EditRecord
형태로 값을 전달하십시오. – MoonKnight