web-dev-qa-db-fra.com

Utilisation de ClosedXML, comment ajuster la hauteur des lignes au contenu?

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?

16
Vlad

Cela fonctionne lorsque vous supprimez la worksheet.Rows().AdjustToContents();.

L’ajustement automatique nécessite parfois davantage d’approche par essais et erreurs ...

13
Raidri

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!!

15
Hardik B Bhilota

Vous pouvez également ajuster les contenus à une plage spécifique de cellules.

worksheet.Columns(2, 20).AdjustToContents();
1
Smit Patel

Le code suivant a fonctionné pour moi.

IXLRange contents = ws.Range("A1:A50");
contents.Style.Alignment.WrapText = true;
1
Dhruv Rangunwala