Xceed's DocX dll
string fileName=@"F:\DataGridView.docx"; if (File.Exists(fileName)) { using( var document = DocX.Load( fileName ) ) { document.InsertSectionPageBreak(false); document.AddHeaders(); Paragraph para=document.InsertParagraph(); para.Append("_______________________________"); Paragraph para2=document.InsertParagraph(); Header header_default = document.Headers.First; Paragraph p1 = header_default.InsertParagraph(); p1.Append("TEST HEADER").Bold().Font("Arial").Color(Color.Blue); p1.Alignment=Alignment.center; p1.FontSize(18); p1.Append(" Date: "+DateTime.Today.ToString("dd-MM-yyyy")); p1.Alignment=Alignment.right; var table = document.AddTable( dataGridView1.SelectedRows.Count+2, dataGridView1.Columns.Count ); table.Design = TableDesign.TableGrid; table.Alignment=Alignment.center; int rowNumber = 0; int columnNumber = 0; foreach (DataGridViewColumn column in dataGridView1.Columns) { table.Rows[rowNumber].Cells[columnNumber].Paragraphs.First().Append(column.HeaderText); columnNumber++; } rowNumber++; foreach (DataGridViewRow row in dataGridView1.SelectedRows.OfType<DataGridViewRow>().OrderBy(c=>c.Index)) { columnNumber = 0; foreach (DataGridViewColumn column in dataGridView1.Columns) { table.Rows[rowNumber].Cells[columnNumber].Paragraphs.First().Append(row.Cells[columnNumber].Value.ToString()); columnNumber++; } rowNumber++; } decimal total = dataGridView1.SelectedRows.OfType<DataGridViewRow>() .Sum(tt => Convert.ToDecimal(tt.Cells[1].Value)); table.Rows[dataGridView1.SelectedRows.Count+1].Cells[1].Paragraphs.First().Append("Total :").Bold(true); table.Rows[dataGridView1.SelectedRows.Count+1].Cells[2].Paragraphs.First().Append(total.ToString()).Bold(true); document.InsertTable(table); document.Save(); } }
System.InvalidOperationException: Sequence contains no elements
Paragraph para=document.InsertParagraph();
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)