2014-03-13 3 views
0

나는 반환하는 방법이 클래스 (AddRecord)가 데이터 테이블 :DataGridView를 표시 할 수없는 데이터 테이블

public DataTable SelectRec(ComboBox cb, DateTimePicker dtp1, DateTimePicker dtp2) 
{ 
    SqlDataAdapter sqladpt = new SqlDataAdapter(); 
    SqlConnection conn = new SqlConnection(connectionStrings); 
    DataTable dt = new DataTable(); 

    try 
    { 
     conn.Open(); 
     SqlCommand myCmd = conn.CreateCommand(); 
     myCmd.CommandType = CommandType.StoredProcedure; 
     myCmd.CommandText = "SelectAccountRecord"; 
     myCmd.Parameters.AddWithValue("@date1", dtp1.Text); 
     myCmd.Parameters.AddWithValue("@date2", dtp1.Text); 
     myCmd.Parameters.AddWithValue("@newspaper", cb.Text); 
     myCmd.ExecuteNonQuery(); 
     sqladpt.SelectCommand = myCmd; 
     sqladpt.Fill(dt); 
     sqladpt.Dispose(); 
     //DataSource = ds.Tables["[a]"].DefaultView; 
    } 
    catch { } 

    return dt; 
} 

그래서 나는 다음과 같이 내 DataGridView에있는 데이터 테이블의 내용을 표시하기 위해 다른이 메소드를 호출

AddRecord ad = new AddRecord(); 
dgvRecorOverview.DataSource= ad.SelectRec(cbNewspaperRO, dtpFromDate, dtpToDate); 

도와주세요!

+0

무엇이 오류입니까? – Derek

답변

0

당신은 후 자동으로 DataSource로 설정 DataTable에 따라 열을 만들 수 DataGridView.AutoGenereateColumns = true;을 설정해야이

dgvRecorOverview.DataBind(); 
0

처럼 DataSource

을 할당하여 그리드에 대한 DataBind()을주고있다. 입력 한 DataTable (dt)에 예상 행과 열이 있는지 확인하십시오. DataTable이 비어 있으면 그리드에 데이터가 표시되지 않습니다.

관련 문제