2010-02-05 3 views
0
내가 바인딩하려고

에 파일을 바인딩 dataGridView는 엑셀 DataGridView를

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" 
       + "Data Source=E://Org.xls;" 
       + "Extended Properties=" + (char)34 
       + "Excel 8.0;HDR=Yes;" + (char)34; 
      OleDbConnection conn = new OleDbConnection(strConn); 
      textBox1.Text = "test"; 
      OleDbCommand command = new OleDbCommand("Select * from [Sheet1$]", conn); 
      conn.Open(); 
      dataGridView1.DataSource = command.ExecuteReader(); 



      conn.Close(); 

에 파일을 엑셀 그러나 그리드보기 아무것도 표시되지 않습니다. 오류가 발생하지 않습니다.

답변

3

Heres하는 방법, Excel 파일의 경로와 그리드에 대한 참조를 변경하기 만하면됩니다.

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://Org.xls;Extended Properties=" + (char)34 + "Excel 8.0;HDR=Yes;" + (char)34); 
    DataSet myExcelData=new DataSet(); 

    conn.Open(); 

    OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("Select * from [Sheet1$]", conn); 
    myDataAdapter.Fill(myExcelData); 

    ultraGrid1.DataSource = myExcelData; 

    conn.Close(); 
+0

ultraGrid1.DataSource = myExcelData; 

여전히 나에게 빈보기를 제공 – Sphinx

+0

myExcelData.tables [0] ............ ..worked for me thanks – Sphinx

+0

안녕하세요, DataGridView에 Excel 데이터를 바인딩하는 경우 클라이언트 컴퓨터의 필수 구성 요소 (Microsoft Excel을 설치해야합니까?)가 무엇입니까? 데이터 저장 및 편집을 위해 순수 텍스트 파일을 사용하려고 생각하고 있지만 매우 지루하고 다루기가 어렵습니다. 그래도 특별한 클라이언트 환경 요구 사항이 없다면 Excel을 사용하여 데이터를 저장하고 DataGridView를 사용하여 Excel에서 가져오고 Excel로 데이터를 내보낼 것입니다. –

0

변경이 코드이

dataGridView1.DataSource = myExcelData.Tables[0]; 
+0

답변에 대한 답변이 이미 제시되어 있다면 의견을 남겨야합니다. –