Я создаю загружаемую версию отчета в виде электронной таблицы в своем веб-приложении, используя EPPlus.Я знаю, что в ячейках будет текст, который будет слишком длинным для ширины ячейки по умолчанию, но я хочу, чтобы ячейки имели ширину по умолчанию, поэтому я устанавливаю для свойства WrapText диапазона ячеек Style значение true.
Текст делаетперенос, но строка, содержащая ячейку, остается на высоте по умолчанию, поэтому все, кроме последней строки переносимого (теперь многострочного) текста, скрыты.
В любом случае можно ли заставить электронную таблицу автоматически изменять размер строки?и показать весь текст.
Вот код, который воспроизводит поведение, которое я не хочу.Я просматриваю электронную таблицу в LibreOffice и OpenOffice.Проблема проявляется только в LibreOffice - она прекрасно работает в OpenOffice, но я бы предпочел, чтобы она работала и в Libre.
Я пробовал разные комбинации установки стиля до и после настройки содержимого.
protected void Page_Load(object sender, EventArgs e) {
using (var package = new ExcelPackage()) {
ExcelWorksheet sheet = package.Workbook.Worksheets.Add("MySheet");
sheet.Cells[2, 2].Value = "Long piece of text";
sheet.Column(2).Style.WrapText = true;
Response.ClearContent();
Response.Clear();
this.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
this.Response.AddHeader("content-disposition",string.Format("attachment; filename={0}", "ExcellData.xlsx"));
this.Response.BinaryWrite(package.GetAsByteArray());
Response.Flush();
Response.Close();
Response.End();
}
}