Je crée une cellule avec du texte. Après cela, j'ai défini la propriété WrapText et la largeur de colonne.
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();
Le texte a été déplacé par des mots, mais la hauteur de la ligne n'est pas modifiée. Comment ajuster la hauteur des lignes au contenu de la cellule?
Cela fonctionne lorsque vous supprimez la worksheet.Rows().AdjustToContents();
.
L’ajustement automatique nécessite parfois davantage d’approche par essais et erreurs ...
Il y a plusieurs façons d'y parvenir.
N'utilisez pas les propriétés wrap ou shrink sur les valeurs de cellule, incluez plutôt cette ligne juste avant d'enregistrer votre Excel
ws.Columns().AdjustToContents();
Une autre façon consiste à utiliser la propriété Allignment
IXLRange titleRange = ws.Range("B2:AA2");
titleRange.Cells().Style
.Alignment.SetWrapText(true); // Its single statement
J'espère que ça aide!!
Vous pouvez également ajuster les contenus à une plage spécifique de cellules.
worksheet.Columns(2, 20).AdjustToContents();
Le code suivant a fonctionné pour moi.
IXLRange contents = ws.Range("A1:A50");
contents.Style.Alignment.WrapText = true;