c#에서 sql 데이타를 sqldatareader로 읽고 난 후 어떻게 datagridview로 데이타를 move 할 수 있나요?
작성자SMART작성시간15.06.06조회수1,295 목록 댓글 8QnA
|
사용언어 (칠해주세요) => (C#,VB) |
|
사용툴 : ms사 비주얼스튜디오2012 |
|
운영체제 (OS) : window server |
안녕하세요? 선배님들
c#을 시작한 초보 입니다. 프로그램 쇼스 보시고 잘못된 부분 알려 주시기 바랍니다.
제가 하려고 한 것은 sql에 있는 데이타를 Sqldatareader로 데이타를 read 한 후 이 데이타를 한행씩 datagridview에
출력하고자 합니다. 그런데 디버깅을 하면 행 갯수를 정상적으로 가져오는데 실제 gridview에는 데이타가
나오지 않는 상태 입니다. 보시고 많은 지도 바랍니다. 고맙습니다
string sql1 = "Select TOP " + PageSize + " accID, cName, contactName, contactPhone,contactEmail from custID ORDER BY accID ";
SqlCommand cmd1 = con.CreateCommand();
cmd1.CommandText = sql1;
SqlDataReader reader1 = cmd1.ExecuteReader();
while (reader1.Read())
{
//dataGridView1.Rows.Add();
int RowIndex = dataGridView1.RowCount - 1;
DataGridViewRow R =dataGridView1.Rows[RowIndex];
R.Cells["accID"].Value = reader1[0].ToString();
dataGridView1.Rows[RowIndex].Cells["cName"].Value = reader1[1].ToString();
Totalcount = Totalcount + 1;
}
textBox1.Text = Totalcount.ToString();
reader1.Close();
댓글
댓글 리스트-
답댓글 작성자SMART 작성자 본인 여부 작성자 작성시간 15.06.10 먼저 감사합니다. 두시님에게
아래 알려준 방법으로 하여 수정하여 테스트한 결과 dataGridView1.Rows.Add(); 에서 error가 발생합니다
error는 InvalidOperrationException was unhandled 입니다.
Rows cannot be programmatically added to the DataGridView's rows collection when the control is
data-bound 입니다
보시고 아시면 알려 주시기 바랍니다.
감사합니다
-
작성자두시 작성시간 15.06.10 dataGridView1.ColumnCount = 5;
를 적어줘보시고 그래도 안되면 다시 댓글 주세요
소스를 수정해 드리겠습니다.
-
답댓글 작성자SMART 작성자 본인 여부 작성자 작성시간 15.06.11 예, 같은 error 가 발생합니다.
저는 sql로 read 한 데이타를 datagridview에 한행씩 데이타를 가져다 화면에 보여 주기기를 원합니다.
고맙습니다. 도와 주신 것. -
답댓글 작성자두시 작성시간 15.06.11 안된다니까 안타깝습니다. 나는 dataGridView를 앞으로도 쓸일이 없지만 smart님 덕분에 잠깐 다뤄보았더니 강력한 기능이 쉽게 구현되는 것에 놀랏습니다. 덕분에 감사합니다. 기본적인 옵션설정을 다시한번 체크해보시기 바랍니다. 포기하지 마시고 에러를 잡고 익혀놓으면 필요한 사람들에게는 유용할 것같더군요.
-
작성자SMART 작성자 본인 여부 작성자 작성시간 15.06.17 예 해결 되었습니다. 두시님 고맙습니다