【发布时间】:2013-02-18 08:34:37
【问题描述】:
问题是单元格内容没有被包装,当该单元格包含一个引用具有一些长字符串的单元格的公式时。
在CodePlex我找到了一个关于这个问题的线程和一个简单的代码来查看问题:
var generated = new XLWorkbook();
var workSheet = generated.AddWorksheet("Test");
workSheet.Cell("B1").Style.Alignment.WrapText = true;
workSheet.Cell("B1").Value = "hello hello hello hello hello";
workSheet.Cell("A3").FormulaA1 = "B1";
workSheet.Cell("A3").Style.Alignment.WrapText = true;
generated.SaveAs("Generated.xlsx");
我也尝试手动设置行高而不是包装单元格:
workSheet.Row(3).Height = workSheet.Row(1).Height;
然而也没有成功。
对此我有什么办法吗?
根据 Peter Albert 的评论,我尝试将设置行设为 AutoFit。我设法在 ClosedXML 中找到的唯一方法是 workSheet.Row(3).AdjustToContent();。但这也不起作用(也没有调整某些列的内容)。
【问题讨论】:
-
试试
worksheet.Cell("A3").WrapText = True,然后是worksheet.Row(3).EntireRow.AutoFit -
@PeterAlbert 我想这值得回答!
-
@PeterAlbert 自己检查过这个吗?此外
IXLRow中没有属性EntireRow....我想你的意思是AdjustToContent??然而这并没有改变。 -
我在单元格上尝试了
.WrapText = True,它指的是其他带有长文本的单元格,它对我有用(单元格水平长大)。我不明白你的问题... -
@Kamil 你能否展示一个小的工作程序(就像我的问题一样),生成一个带有公式的单元格的 xlsx,它会根据显示的值改变它的宽度?