Horizontale de l'alignement du Texte dans Word à l'aide d'OpenXml Sdk 2.0
J'ai besoin d'une autre aide... Ma fonction d'exportation les exportations de mon rapport comme un tableau dans word.
J'ai besoin d'appliquer l'alignement horizontal de la propriété pour chaque cellule. Le Code que j'ai écrit pour l'exportation est donnée ci-dessous. Vlb est un textblock qui je l'utilise dans mon rapport.
J'ai écrit l'Alignement de code ici. Mais elle ne fonctionne pas.. Merci de m'aider à accomplir cette tâche à l'aide d'OpenXML SDk 2.0
using Word = DocumentFormat.OpenXml.Wordprocessing;
WordprocessingDocument WordDoc = WordprocessingDocument.Create(SavePath, WordprocessingDocumentType.Document);
MainDocumentPart mainDocument = WordDoc.AddMainDocumentPart();
mainDocument.Document = new Word.Document();
StyleDefinitionsPart StylesDefs = mainDocument.AddNewPart<StyleDefinitionsPart>();
StylesDefs.Styles = new Word.Styles();
Word.Body body = new Word.Body();
Word.Table WordTable = new Word.Table();
Word.TableRow Row;
Word.TableCell Cell = new Word.TableCell();
Word.Style ParaStyle = new Word.Style(new Word.Name() { Val = Tbl.GetHashCode().ToString() });
Word.RunProperties ParaRunProperties = new Word.RunProperties();
ParaRunProperties.Append(new Word.RunFonts() { Ascii = Tbl.FontFamily.ToString() });
if (Tbl.HorizontalAlignment == HorizontalAlignment.Center)
ParaRunProperties.Append(new Word.Justification() { Val = Word.JustificationValues.Center });
else if (Tbl.HorizontalAlignment == HorizontalAlignment.Right)
ParaRunProperties.Append(new Word.Justification() { Val = Word.JustificationValues.Right });
else
ParaRunProperties.Append(new Word.Justification() { Val = Word.JustificationValues.Left });
ParaStyle.Append(ParaRunProperties);
StylesDefs.Styles.Append(ParaStyle);
Word.ParagraphProperties ParaProperties = new Word.ParagraphProperties() { ParagraphStyleId = new Word.ParagraphStyleId() { Val = Tbl.GetHashCode().ToString() } };
Cell.Append(new Word.Paragraph(ParaProperties, new Word.Run(new Word.Text(Tbl.Text))));
Row.Append(Cell);
WordTable.Append(Row);
body.Append(WordTable);
mainDocument.Document.Append(body);
mainDocument.Document.Save();
WordDoc.Close();
OriginalL'auteur Sasikumar D.R. | 2009-11-25
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser
w:jc
élément de votre paragraphe (w:p
) propriétés (w:pPr
) pour définir votre choix d'alignement horizontal:Vous pouvez toujours enregistrer un document Word en tant que OpenXML, le renommer .zip et le décompresser pour inspecter comment faire quelque chose dans OpenXML.
OriginalL'auteur Rubens Farias
Grâce Rubens Farias,
Mon problème résolu ici.. Petit Changement dans le Code du travail.. le Problème est que j'ai donné la Justification de la propriété pour Exécuter des Propriétés, au Lieu Propriétés de Paragraphe.
J'ai Modifié le Code comme
Cela a Résolu mon Problème.. Merci encore une Fois pour Rubens pour votre aide, avec qui mon erreur a été Identifiée.
OriginalL'auteur Sasikumar D.R.
Ici, vous avez trois différents types d'alignement à l'intérieur de votre feuille de style. Vous pouvez utiliser ce constructeur à passer:
Cela est possible parce que CellFormats hérite de OpenXmlElement. Dans mon code, j'ai créé mon propre remplissage, la police et des frontières... ne faites pas attention à cela si vous n'en avez pas besoin.
Donc, finalement, vous pouvez configurer votre téléphone comme un en-tête de cette façon:
OriginalL'auteur Mauro Bilotti