У меня есть GridView, который я хочу экспортировать в Excel. Когда я использую пример кода, который я нахожу в Интернете, он прекрасно экспортирует содержимое в Excel, но по некоторым причинам он также очищает все линии сетки за пределами моей экспортированной таблицы.
Для вашего обычного пользователя excel это достаточно легко исправить, но мне нужно, чтобы это решение работало для всех.
Итак, есть ли способ экспортировать данные из GridView в книгу Excel, чтобы они выглядели так, как будто они были напечатаны в Excel? Я вставил код, который я использую ниже, предположим, что GridView с именем toPrint существует и содержит точные данные.
Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=" + name + "_Registration_Forms.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.ms-excel";
Page.EnableViewState = false;
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
toPrint.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
РЕДАКТИРОВАТЬ: Найдено одно частичное решение. Если я экспортирую в виде списка, разделенного запятыми, и задаю заголовок CSV-файлом, он открывается нормально, и отображаются все линии сетки (даже те, которые находятся вне экспортируемых данных). Конечно, единственная проблема в этом состоит в том, чтобы вычеркнуть все запятые и символы новой строки из моих значений перед их экспортом.