1

私はいくつかのデータグリッドを持つ小さなアプリケーションを書いていて、そのグリッドを MS Excel にエクスポートする必要があります. Excelにエクスポートできるクラスがあります。これはまさに私の問題です。現在、データグリッドのエクスポートごとに、このクラスを作成する方法がわかりません。

//Save dialog...create workbook... datashee, etc...
//Now.. fill the Excel with the datagrid info.
//To create the headers in a grid independent way I have
for (int i = 0; i < gridgui.Columns.Count; i  ) worksheet.Cells[0, i] = new Cell(gridgui.Columns[i].Header);

//My problem is... I dont know how to fill the content in a Source independent way, and I have fixed properties like this:
int renglon = 1;
foreach (dataStuff reg in infogrid) 
//dataStuff is my class that fills the ObservableCollection called infrogrid
{
    if (reg.Product != null)
    {
        worksheet.Cells[renglon, 0] = new Cell(reg.Product);
        worksheet.Cells[renglon, 1] = new Cell(reg.Price);
        renglon++;
    }
}

そして、このアプローチは現在完全に機能していますが、それが最善の方法ではないことはわかっています。私の考えは、ObservableCollection と datagrid (ヘッダー名を取得するため。オプション?) を受け取るクラスを作成し、それを次のようにエクスポートすることです。

Exportme myexport = new Exportme(grid1,list1);
myexport.export();
Exportme myexport2 = new Exportme(grid2,list2);
myexport2.export();

私の現在のコピー&ペースト技術を使用する代わりに:(

前もって感謝します。

4

0 に答える 0