private static void CreateTable(DocX doc) { const int TABLE_WIDTH = 3; const int TABLE_HEIGHT = 4; var table = doc.AddTable(TABLE_HEIGHT, TABLE_WIDTH); table.Alignment = Alignment.center; for (int row = 0; row < table.RowCount; row++) { for (int col = 0; col < table.ColumnCount; col++) { table.Rows[row].Cells[col].Paragraphs[0].Alignment = Alignment.center; if (row == 0) { table.Rows[row].Cells[col].FillColor = System.Drawing.Color.MediumBlue; switch (col) { case 0: table.Rows[row].Cells[col].Paragraphs[0].Append("Team"); break; case 1: table.Rows[row].Cells[col].Paragraphs[0].Append("Game"); break; case 2: table.Rows[row].Cells[col].Paragraphs[0].Append("Points"); break; } } else { table.Rows[row].Cells[col].Paragraphs[0].Append("-"); } } } doc.InsertTable(table); }
private string CreateDoc( ) { var fileName = Seged.Seged.CreateFileName( versenyAdatok.VersenysorozatAzonosito, versenyAdatok.Azonosito, dokumentumTipus ); document = DocX.Create( fileName ); document.AddHeaders( ); Seged.Seged.OldalSzamozas( document ); var header = document.Headers.odd; AddHeader( header ); VersenyAdatokTablazat( header ); foreach( var ijtipus in ijtipusok._ijtipusok ) { Table table ; foreach( var korosztaly in ijtipus.korosztalyok.korosztalyok ) { if( !korosztaly.eredmenyek.IsEmpty( ) ) { var korosztalyParagraph = document.InsertParagraph(); korosztalyParagraph.Append( "Íjtípus: " ); korosztalyParagraph.Append( ijtipus.megnevezes ).Bold( ); korosztalyParagraph.AppendLine( " Korosztály: " ); korosztalyParagraph.Append( korosztaly.megnevezes ).Bold( ); if( !korosztaly.eredmenyek.Nok.Count.Equals( 0 ) ) { var nokParagraph = document.InsertParagraph(); nokParagraph.Append( " Nők: " ).Bold( ); int helyezes = 0; foreach( var eredmeny in korosztaly.eredmenyek.Nok ) { helyezes++; table = document.AddTable( 1, 7 ); table.Rows[0].Cells[1].Paragraphs[0].Append( ( helyezes ) + "." ); table.Rows[0].Cells[2].Paragraphs[0].Append( eredmeny.Sorszam.ToString( ) ); table.Rows[0].Cells[3].Paragraphs[0].Append( eredmeny.Nev ); table.Rows[0].Cells[4].Paragraphs[0].Append( eredmeny.Egyesulet ); table.Rows[0].Cells[5].Paragraphs[0].Append( eredmeny.OsszPont.ToString( ) + " pont" ); table.Rows[0].Cells[6].Paragraphs[0].Append( eredmeny.Szazalek.ToString( ) + "%" ); TablazatFormazas( table ); document.InsertTable( table ); } } if( !korosztaly.eredmenyek.Ferfiak.Count.Equals( 0 ) ) { var nokParagraph = document.InsertParagraph(); nokParagraph.Append( " Férfiak: " ).Bold( ); int helyezes = 0; foreach( var eredmeny in korosztaly.eredmenyek.Ferfiak ) { helyezes++; table = document.AddTable( 1, 7 ); table.Rows[0].Cells[1].Paragraphs[0].Append( ( helyezes ) + "." ); table.Rows[0].Cells[2].Paragraphs[0].Append( eredmeny.Sorszam.ToString( ) ); table.Rows[0].Cells[3].Paragraphs[0].Append( eredmeny.Nev ); table.Rows[0].Cells[4].Paragraphs[0].Append( eredmeny.Egyesulet ); table.Rows[0].Cells[5].Paragraphs[0].Append( eredmeny.OsszPont.ToString( ) + " pont" ); table.Rows[0].Cells[6].Paragraphs[0].Append( eredmeny.Szazalek.ToString( ) + "%" ); TablazatFormazas( table ); document.InsertTable( table ); } } if( !korosztaly.eredmenyek.Egyben.Count.Equals( 0 ) ) { var nokParagraph = document.InsertParagraph(); nokParagraph.Append( " Egyben: " ).Bold( ); int helyezes = 0; foreach( var eredmeny in korosztaly.eredmenyek.Egyben ) { helyezes++; table = document.AddTable( 1, 7 ); table.Rows[0].Cells[1].Paragraphs[0].Append( ( helyezes ) + "." ); table.Rows[0].Cells[2].Paragraphs[0].Append( eredmeny.Sorszam.ToString( ) ); table.Rows[0].Cells[3].Paragraphs[0].Append( eredmeny.Nev ); table.Rows[0].Cells[4].Paragraphs[0].Append( eredmeny.Egyesulet ); table.Rows[0].Cells[5].Paragraphs[0].Append( eredmeny.OsszPont.ToString( ) + " pont" ); table.Rows[0].Cells[6].Paragraphs[0].Append( eredmeny.Szazalek.ToString( ) + "%" ); TablazatFormazas( table ); document.InsertTable( table ); } } } } } try { document.Save( ); } catch( Exception ) { MessageBox.Show( "A dokumentum meg van nyitva!", "Verseny Teljes Eredménylap", MessageBoxButton.OK, MessageBoxImage.Error ); } return fileName; }
private Table PrepareHeaderInfoTable(DocX document, HeaderInfoOutput headerInfo) { Paragraph subHeader = document.InsertParagraph(); subHeader.Alignment = Alignment.center; subHeader.Append(System.IO.Path.GetFileName(headerInfo.HeaderName)).Bold().FontSize(14); Table subHeaderTable = document.AddTable(headerInfo.Params.Count(), 2); subHeaderTable.Alignment = Alignment.center; subHeaderTable.Design = TableDesign.TableGrid; int index = 0; foreach (var entry in headerInfo.Params) { subHeaderTable.Rows[index].Cells[0].Paragraphs.First().Append(entry.Item1); subHeaderTable.Rows[index].Cells[1].Paragraphs.First().Append(entry.Item2); index++; } return subHeaderTable; }