19

我用文本创建单元格。之后我设置 WrapText 属性和列宽。

var cell = worksheet.Cell("A1");
cell.Style.Alignment.WrapText = true;
cell.SetValue("This is very long text");
worksheet.Column(1).Width = 10;
worksheet.Rows().AdjustToContents();

文本已按单词移动,但行高未更改。如何将行高调整为单元格内容?

4

5 回答 5

17

有很多方法可以实现这一目标。

不要在单元格值上使用换行或收缩属性,而是在保存 Excel 之前包含此行

ws.Columns().AdjustToContents();

另一种方法是利用 Allignment 属性

 IXLRange titleRange = ws.Range("B2:AA2");
        titleRange.Cells().Style
            .Alignment.SetWrapText(true); // Its single statement

希望能帮助到你!!

于 2015-07-15T17:38:35.910 回答
15

当您删除worksheet.Rows().AdjustToContents();.

自动拟合有时需要更多的试错方法......

于 2014-05-15T15:24:02.657 回答
1

您还可以在特定范围的单元格上调整内容。

worksheet.Columns(2, 20).AdjustToContents();
于 2015-10-19T17:09:29.510 回答
1

以下代码对我有用。

IXLRange contents = ws.Range("A1:A50");
contents.Style.Alignment.WrapText = true;
于 2015-10-07T16:09:22.537 回答
0

我认为这是 ClosedXML 的一个错误。 在此处输入链接描述

ws.Row(1).AdjustToContents();
ws.Row(1).ClearHeight();

就我而言,它有效。版本:0.95.4

于 2022-02-08T09:40:07.620 回答