Как добавить пользовательский текст заголовка (не заголовок столбца) в экспортированный файл Excel из DatagridView с помощью приложения c # windows - PullRequest
0 голосов
/ 09 октября 2018

Приветствие добрых людей.Надеюсь, у вас все хорошо.

У меня есть Datagridview, который заполняет данные из базы данных и экспортирует данные из datagridview в виде файла Excel.

Когда я экспортирую данные в виде файла Excel.он содержит данные с заголовком datagrdiview, но мне также нужно добавить заголовок и адрес заголовка в файл Excel, когда он будет экспортирован.которого нет в datagridview.Как я могу это сделать?Я пробую много вещей из Google.отмечая работы.мой текущий исходный код (который просто экспортирует данные в виде файла Excel) приведен ниже:

private void btnExcel_Click(object sender, EventArgs e)
{
    SaveFileDialog sfd = new SaveFileDialog();
    sfd.Filter = "Excel Document(*.xls)|*.xls";
    sfd.FileName = "export.xls";

    if (sfd.ShowDialog()==DialogResult.OK)
    {
        ToExcel(dgvPendingPR,sfd.FileName);
    }
}

private void ToExcel ( DataGridView dgv,string filename)
{
    string stOutput = "";
    string sHeaders = "";
    for (int j = 0; j < dgv.Columns.Count; j++)
        sHeaders = sHeaders.ToString() + Convert.ToString(dgv.Columns[j].HeaderText)+"\t";
    stOutput += sHeaders + "\r\n";

    for (int i = 0; i < dgv.RowCount-1; i++)
    {
        string stline = "";
        for (int j = 0; j < dgv.Rows[i].Cells.Count; j++)
            stline = stline.ToString() + Convert.ToString(dgv.Rows[i].Cells[j].Value)+"\t";
        stOutput += stline + "\r\n";
    }
    Encoding utf16 = Encoding.GetEncoding(1254);
    byte[] output = utf16.GetBytes(stOutput);
    FileStream fs = new FileStream(filename,FileMode.Create);
    BinaryWriter bw = new BinaryWriter(fs);
    bw.Write(output,0,output.Length);
    bw.Flush();
    bw.Close();
    fs.Close();
}
...