彩票走势图

Word控件Spire.Doc 【Table】教程(1):在 Word 中创建表格-C#VB.NET

翻译|使用教程|编辑:胡涛|2022-12-15 11:13:01.797|阅读 118 次

概述:在本文中,您将了解如何使用Spire.Doc for .NET以编程方式在 Word 文档中创建包含数据的表格。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

慧都年终大促

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。

Spire.Doc for.NET 最新下载

在 MS Word 中,表格可以按行和列组织和呈现数据,这使得信息更易于理解和分析。在本文中,您将了解如何使用Spire.Doc for .NET以编程方式在 Word 文档中创建包含数据的表格。

一、安装适用于 .NET 的 Spire.Doc

首先,您需要添加包含在 Spire.Doc for.NET 包中的 DLL 文件作为您的 .NET 项目中的引用。DLL 文件可以从此链接下载或通过NuGet安装。

PM> Install-Package Spire.Doc

二、在 Word 中创建一个简单的表格

下面是 Spire.Doc for .NET 提供的一些核心类和方法,用于在 Word 中创建和格式化表格。

姓名 描述
表类 表示 Word 文档中的表格。
TableRow 类 代表表格中的一行。
TableCell 类 代表表格中的特定单元格。
Section.AddTbale() 方法 将新表添加到指定部分。
Table.ResetCells() 方法 重置行号和列号。
Table.Rows 属性 获取表行。
TableRow.Height 属性 设置指定行的高度。
TableRow.Cells 属性 返回单元格集合。
TableRow.RowFormat 属性 获取指定行的格式。

详细步骤如下

  • 创建一个Document对象并向其添加一个部分。
  • 准备表头行和其他行的数据,分别存储在一维字符串数组和二维字符串数组中。
  • 使用Section.AddTable()方法将表格添加到该部分。
  • 向标题行插入数据,并设置行格式,包括行高、背景颜色和文本对齐方式。
  • 将数据插入其余行并将格式应用于这些行。
  • 使用Document.SaveToFile()方法将文档保存到另一个文件。

【C#】

using System;
using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;

namespace WordTable
{
class Program
{
static void Main(string[] args)
{
//Create a Document object
Document doc = new Document();
//Add a section
Section s = doc.AddSection();

//Define the data for the table
String[] Header = { "Date", "Description", "Country", "On Hands", "On Order" };
String[][] data = {
new String[]{ "08/07/2021","Dive kayak","United States","24","16"},
new String[]{ "08/07/2021","Underwater Diver Vehicle","United States","5","3"},
new String[]{ "08/07/2021","Regulator System","Czech Republic","165","216"},
new String[]{ "08/08/2021","Second Stage Regulator","United States","98","88"},
new String[]{ "08/08/2021","Personal Dive Sonar","United States","46","45"},
new String[]{ "08/09/2021","Compass Console Mount","United States","211","300"},
new String[]{ "08/09/2021","Regulator System","United Kingdom","166","100"},
new String[]{ "08/10/2021","Alternate Inflation Regulator","United Kingdom","47","43"},
};
//Add a table
Table table = s.AddTable(true);
table.ResetCells(data.Length + 1, Header.Length);

//Set the first row as table header
TableRow FRow = table.Rows[0];
FRow.IsHeader = true;

//Set the height and color of the first row
FRow.Height = 23;
FRow.RowFormat.BackColor = Color.LightSeaGreen;
for (int i = 0; i < Header.Length; i++)
{
//Set alignment for cells
Paragraph p = FRow.Cells[i].AddParagraph();
FRow.Cells[i].CellFormat.VerticalAlignment = VerticalAlignment.Middle;
p.Format.HorizontalAlignment = HorizontalAlignment.Center;

//Set data format
TextRange TR = p.AppendText(Header[i]);
TR.CharacterFormat.FontName = "Calibri";
TR.CharacterFormat.FontSize = 12;
TR.CharacterFormat.Bold = true;
}

//Add data to the rest of rows and set cell format
for (int r = 0; r < data.Length; r++)
{
TableRow DataRow = table.Rows[r + 1];
DataRow.Height = 20;
for (int c = 0; c < data[r].Length; c++)
{
DataRow.Cells[c].CellFormat.VerticalAlignment = VerticalAlignment.Middle;
Paragraph p2 = DataRow.Cells[c].AddParagraph();
TextRange TR2 = p2.AppendText(data[r][c]);
p2.Format.HorizontalAlignment = HorizontalAlignment.Center;

//Set data format
TR2.CharacterFormat.FontName = "Calibri";
TR2.CharacterFormat.FontSize = 11;
}
}

//Save the document
doc.SaveToFile("WordTable.docx", FileFormat.Docx2013);
}
}
}

【VB.NET】

Imports System
Imports System.Drawing
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields

Namespace WordTable

Class Program

Private Shared Sub Main(ByVal args() As String)
'Create a Document object
Dim doc As Document = New Document

'Add a section
Dim s As Section = doc.AddSection

'Define the data for the table
Dim Header() As String = New String() {"Date", "Description", "Country", "On Hands", "On Order"}
Dim data(,) As String = New String() {New String() {"08/07/2021", "Dive kayak", "United States", "24", "16"}, New String() {"08/07/2021", "Underwater Diver Vehicle", "United States", "5", "3"}, New String() {"08/07/2021", "Regulator System", "Czech Republic", "165", "216"}, New String() {"08/08/2021", "Second Stage Regulator", "United States", "98", "88"}, New String() {"08/08/2021", "Personal Dive Sonar", "United States", "46", "45"}, New String() {"08/09/2021", "Compass Console Mount", "United States", "211", "300"}, New String() {"08/09/2021", "Regulator System", "United Kingdom", "166", "100"}, New String() {"08/10/2021", "Alternate Inflation Regulator", "United Kingdom", "47", "43"}}

'Add a table
Dim table As Table = s.AddTable(true)
table.ResetCells((data.Length + 1), Header.Length)

'Set the first row as table header
Dim FRow As TableRow = table.Rows(0)
FRow.IsHeader = true

'Set the height and color of the first row
FRow.Height = 23
FRow.RowFormat.BackColor = Color.LightSeaGreen
Dim i As Integer = 0
Do While (i < Header.Length)

'Set alignment for cells
Dim p As Paragraph = FRow.Cells(i).AddParagraph
FRow.Cells(i).CellFormat.VerticalAlignment = VerticalAlignment.Middle
p.Format.HorizontalAlignment = HorizontalAlignment.Center

'Set data format
Dim TR As TextRange = p.AppendText(Header(i))
TR.CharacterFormat.FontName = "Calibri"
TR.CharacterFormat.FontSize = 12
TR.CharacterFormat.Bold = true
i = (i + 1)
Loop

'Add data to the rest of rows and set cell format
Dim r As Integer = 0
Do While (r < data.Length)
Dim DataRow As TableRow = table.Rows((r + 1))
DataRow.Height = 20
Dim c As Integer = 0
Do While (c < data(r).Length)
DataRow.Cells(c).CellFormat.VerticalAlignment = VerticalAlignment.Middle
Dim p2 As Paragraph = DataRow.Cells(c).AddParagraph
Dim TR2 As TextRange = p2.AppendText(data(r)(c))
p2.Format.HorizontalAlignment = HorizontalAlignment.Center

'Set data format
TR2.CharacterFormat.FontName = "Calibri"
TR2.CharacterFormat.FontSize = 11
c = (c + 1)
Loop

r = (r + 1)
Loop

'Save the document
doc.SaveToFile("WordTable.docx", FileFormat.Docx2013)
End Sub
End Class
End Namespace

C#/VB.NET: Create a Table in Word

以上便在C#/VB.NET:在 Word 中创建表格,如果您有其他问题也可以继续浏览本系列文章,获取相关教程,你还可以给我留言或者加入我们的官方技术交流群。


欢迎下载|体验更多E-iceblue产品

获取更多信息请咨询  ;技术交流Q群(767755948)


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP