C# 操作Word文本框——插入表格/读取表格/删除表格
在文本框中,我们可以操作很多元素,如文本、图片、表格等,在本篇文章中将着重介绍如何插入表格到文本框,插入的表格我们可以对表格进行格式化操作来丰富表格内容。此外,对于文本框中的表格内容,我们也可以根据需要来读取表格或者删除表格。
使用工具
示例代码
【示例1】插入表格到文本框
C#
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; namespace InsertTableToTextbox_Doc { class Program { static void Main(string[] args) { //创建一个Document类对象 Document document = new Document(); //添加section到文档 Section section = document.AddSection(); //添加段落section Paragraph paragraph = section.AddParagraph(); //添加指定大小的文本框到段落 TextBox textbox = paragraph.AppendTextBox(300, 100); //添加文本到文本,设置文本格式 Paragraph textboxParagraph = textbox.Body.AddParagraph(); TextRange textboxRange = textboxParagraph.AppendText("Sample Report 1"); textboxRange.CharacterFormat.FontName = "Arial"; //插入表格到文本框 Table table = textbox.Body.AddTable(true); //指定表格行数、列数 table.ResetCells(4, 4); //实例化数组内容 string[,] data = new string[,] { {"Name","Age","Gender","ID" }, {"John","28","Male","0023" }, {"Steve","30","Male","0024" }, {"Lucy","26","female","0025" } }; //将数组内容添加到表格 for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { TextRange tableRange = table[i, j].AddParagraph().AppendText(data[i, j]); tableRange.CharacterFormat.FontName = "Arial"; } } //应用表格样式 table.ApplyStyle(DefaultTableStyle.MediumGrid3Accent1); //保存并打开文档 document.SaveToFile("Output.docx", FileFormat.Docx2013); System.Diagnostics.Process.Start("Output.docx"); } } }
这里应用表格格式,Spire.Doc 支持多种不同的表格类型,可根据需要自行选择。
表格添加效果:
【示例2】读取文本框中的表格
C#
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using System.IO; using System.Text; namespace GetTableFromTextbox_Doc { class Program { static void Main(string[] args) { //载入Word文档 Document document = new Document("Output.docx"); //获取第一个文本框 TextBox textbox = document.TextBoxes[0]; //获取文本框中第一个表格 Table table = textbox.Body.Tables[0] as Table; //实例化StringBuilder类 StringBuilder sb = new StringBuilder(); //遍历表格中的段落并提取文本 foreach (TableRow row in table.Rows) { foreach (TableCell cell in row.Cells) { foreach (Paragraph paragraph in cell.Paragraphs) { sb.AppendLine(paragraph.Text); } } } File.WriteAllText("text.txt", sb.ToString()); } } }
读取结果:
【示例3】删除Word文本框中的表格
C#
using Spire.Doc; using Spire.Doc.Fields; namespace RemoveTableFormTextbox_Doc { class Program { static void Main(string[] args) { //创建Document实例 Document document = new Document("Output.docx"); //获取第一个文本框 TextBox textbox = document.TextBoxes[0]; //删除文本框中第一个表格 textbox.Body.Tables.RemoveAt(0); //保存文档 document.SaveToFile("RemoveTable.docx", FileFormat.Docx2013); System.Diagnostics.Process.Start("RemoveTable.docx"); } } }
删除效果:
附:
除了添加在文本框汇中操作表格以外,我们向文本框中添加图文混排的内容也是比较常见的,不仅仅只是添加简单文本或者图片,一些复杂的格式化的操作也是可以的,具体可以参阅博客“C# 插入排版精良的Word文本框”
以上是本次关于“C# 操作Word 文本框中的表格”的全部内容。如需转载,请注明出处!
感谢阅读!