在文本框中,我们可以操作很多元素,如文本、图片、表格等,在本篇文章中将着重介绍如何插入表格到文本框,插入的表格我们可以对表格进行格式化操作来丰富表格内容。此外,对于文本框中的表格内容,我们也可以根据需要来读取表格或者删除表格。

使用工具

示例代码

【示例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(, ); //添加文本到文本,设置文本格式
Paragraph textboxParagraph = textbox.Body.AddParagraph();
TextRange textboxRange = textboxParagraph.AppendText("Sample Report 1");
textboxRange.CharacterFormat.FontName = "Arial"; //插入表格到文本框
Table table = textbox.Body.AddTable(true);
//指定表格行数、列数
table.ResetCells(, );
//实例化数组内容
string[,] data = new string[,]
{
{"Name","Age","Gender","ID" },
{"John","","Male","" },
{"Steve","","Male","" },
{"Lucy","","female","" }
}; //将数组内容添加到表格
for (int i = ; i < ; i++)
{
for (int j = ; j < ; 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[]; //获取文本框中第一个表格
Table table = textbox.Body.Tables[] 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[]; //删除文本框中第一个表格
textbox.Body.Tables.RemoveAt(); //保存文档
document.SaveToFile("RemoveTable.docx", FileFormat.Docx2013);
System.Diagnostics.Process.Start("RemoveTable.docx");
}
}
}

删除效果:

附:

除了添加在文本框汇中操作表格以外,我们向文本框中添加图文混排的内容也是比较常见的,不仅仅只是添加简单文本或者图片,一些复杂的格式化的操作也是可以的,具体可以参阅博客“C# 插入排版精良的Word文本框

以上是本次关于“C# 操作Word 文本框中的表格”的全部内容。如需转载,请注明出处!

感谢阅读!

C# 操作Word文本框——插入表格/读取表格/删除表格的更多相关文章

  1. Java 读取Word文本框中的文本/图片/表格

    Word可插入文本框,文本框中可嵌入文本.图片.表格等内容.对文档中的已有文本框,也可以读取其中的内容.本文以Java程序代码来展示如何读取文本框,包括读取文本框中的文本.图片以及表格等. [程序环境 ...

  2. C# 读取Word文本框中的文本、图片和表格(附VB.NET代码)

    [概述] Word中可插入文本框,在文本框中可添加文本.图片.表格等内容.本篇文章通过C#程序代码介绍如何来读取文本框中的文本.图片和表格等内容.附VB.NET代码,有需要可作参考. [程序环境] 程 ...

  3. Java 获取、删除Word文本框中的表格

    本文介绍如何来获取Word文本框中包含的表格,以及删除表格. 程序测试环境包括: IDEA JDK 1.8.0 Spire.Doc.jar 注:jar导入,可通过创建Maven程序项目,并在pom.x ...

  4. Java 添加Word文本框

    在Word中,文本框是指一种可移动.可调节大小的文字或图形容器.我们可以向文本框中添加文字.图片.表格等对象,下面,将通过Java编程来实现添加以上对象到Word文本框. 使用工具:Free Spir ...

  5. Java 设置Word文本框中的文字旋转方向

    Word文档中可添加文本框,并设置文本框为横向文本排列或是纵向文本排列,或者设置文本框中的文字旋转方向等.通过Java程序代码,也可以实现以上文本框的操作.下面以Java代码示例展示具体的实现步骤.另 ...

  6. windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  7. 去除IE10+上文本框巨丑无比的删除图标以及显示密码图标

    去除IE10+上文本框巨丑无比的删除图标以及显示密码图标 IE浏览器总是让人喜欢让人厌,在最新的IE浏览器(IE10+)上使用表单时,文本框内后面会出现很巨丑无比的“删除图标”以及“显示密码图标”,如 ...

  8. C# 设置Word文本框中的文字旋转方向

    在Word中可插入文本框,默认情况下插入的文本框中的文字方向为横向排列,对于一些特殊文档的设计要求,需要改变文字方向,如本次测试中的文档排版为考生试卷类型,考生信息栏的内容为下图中的这种, 本文将以C ...

  9. webdriver高级应用- 操作富文本框

    富文本框的技术实现和普通的文本框的定位存在较大的区别,富文本框的常见技术用到了Frame标签,并且在Frame里面实现了一个完整的HTML网页结构,所以使用普通的定位模式将无法直接定位到富文本框对象. ...

随机推荐

  1. <转>如何在iOS 7中设置barTintColor实现类似网易和 Facebook 的 navigationBar 效果

    转自:i‘m Allen的博客 先给代码:https://github.com/allenhsu/CRNavigationController 1. 问题的表现 相信很多人在 iOS 7 的适配过程中 ...

  2. List内存分配

    当采用默认构造函数List<int> value = new List<int>();实例化一个List<T>对象时,.Net Framework只是在内存中申请了 ...

  3. iframe局部刷新的二种实现方法

    需求描述: 当页面有一部分是不变的或整个页面的图片很多时,可以考虑使用局部刷新,以提高整体的下载速度与用户体验.   1,iframe实现局部刷新的方法一 复制代码代码示例: <script t ...

  4. UML2.0

    一.系统过滤器使用说明 1.OutputCache过滤器 OutputCache过滤器用于缓存你查询结果,这样可以提高用户体验,也可以减少查询次数.它有以下属性: Duration:缓存的时间,以秒为 ...

  5. EF Core使用SQL调用返回其他类型的查询

    假设你想要 SQL 本身编写,而不使用 LINQ. 需要运行 SQL 查询中返回实体对象之外的内容. 在 EF Core 中,执行该操作的另一种方法是编写 ADO.NET 代码,并从 EF 获取数据库 ...

  6. 完美支持Py3的微信开发库推荐

    之前分享了个代码,后来发现中文发送是乱码,应该是加密代码的问题,然后在又找到这个可完美使用的Py3微信库wechatpy:https://github.com/jxtech/wechatpy

  7. java内存溢出(二)

    一.有哪些内存溢出异常? OutOfMemoryError: 当堆.栈(多线程场景).方法区(永久区).本地内存(元数据.直接内存),数据容量达到最大时产生 StackOverFlowError: 线 ...

  8. linux常用命令合集(未完)

    (1)新建 新建文件夹:mkdir 文件夹名 新建文件:touch 文件路径/文件名 删除: rm –f filename删除文件 rm –rf filename删除文件夹 (2)重命名 1将一个名为 ...

  9. Ocelot中文文档-Websockets

    Ocelot额外支持代理websockets.这个功能在问题 212中被提出. 为了是Ocelot代理websocket,你需要做如下事情. 在你的Configure方法中,你要告知应用程序使用Web ...

  10. Nowcoder84D

    Nowcoder84D 传送门 很有趣的进制转换题! 如果x满足题意,那么x+k-1一定能符合要求! 因为k-1用k进制表示就是1,-1,1+(-1)=0所以数位之和不变! 用map维护一下前缀和.就 ...