2012-03-06 5 views
0

데이터 저장소에 직접 바인딩되지 않은 datagridview가 있습니다. 대신 런타임 중에 다양한 메소드의 데이터를 추가합니다. 나는 dataSet을 받아들이고 그것을 Excel로 출력하는 메소드를 만들었지 만, dataGridView에서 geta dataSet을 빌드하는 방법이 있다면 찾을 수 없습니다.언 바운드 datagridview에서 데이터 집합 가져 오기

감사합니다.

+1

첫 번째 장소의 그리드 대신 데이터 세트에 데이터를 추가하는 것만 큼은 어떨까요? 그런 다음 그리드의 DataSource를 DataSet으로 설정할 수 있습니다. –

+0

나는 그것을 할 수 있었다. 그러나 나는 그 질문에서 지정한 방법으로 오히려 그것을 할 것이다. 훨씬 적은 오버 헤드. – TheGateKeeper

+1

그래서 datagridview에서 직접 엑셀로 저장하지 않으시겠습니까? [예제] (http://www.codeproject.com/Articles/32224/Exporting-a-DataGridView-to-Excel-in-NET-2-0-C-cod) – Reniuz

답변

0

코드가 작동하도록 업데이트했습니다. 이전 답변에는 몇 가지 오타가있었습니다.

DataTable dt = new DataTable(); 
for (int i = 0; i < dgvPaperAndPlastic.Columns.Count; i++) 
{ 
    DataColumn column = new DataColumn(dgvPaperAndPlastic.Columns[i].HeaderText); 
    dt.Columns.Add(column); 
} 
int noOfColumns = dgvPaperAndPlastic.Columns.Count; 
foreach (DataGridViewRow dr in dgvPaperAndPlastic.Rows) 
{ 
    //Create table and insert into cell value. 
    DataRow dataRow = dt.NewRow(); 

    for (int i = 0; i < noOfColumns; i++) 
    { 
      dataRow[i] = dr.Cells[i].Value.ToString(); 
    } 
} 
관련 문제