没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
2页
本文实例讲述了C#采用OpenXml给Word文档添加表格的方法,是非常实用的操作技巧。分享给大家供大家参考。具体分析如下: 这里将展示如何使用Openxml向Word添加表格. 代码中表头和数据我们用的同一个TableRow来添加,其实可以通过TableHeader来,其实都一样。后面我们还会进一步给出如何设置单元格样式。表头那一行可以自己通过设置样式来控制 示例代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.
资源推荐
资源详情
资源评论
C#采用采用OpenXml给给Word文档添加表格文档添加表格
本文实例讲述了C#采用OpenXml给Word文档添加表格的方法,是非常实用的操作技巧。分享给大家供大家参考。具体分析如
下:
这里将展示如何使用Openxml向Word添加表格. 代码中表头和数据我们用的同一个TableRow来添加,其实可以通过
TableHeader来,其实都一样。后面我们还会进一步给出如何设置单元格样式。表头那一行可以自己通过设置样式来控制
示例代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DocumentFormat.OpenXml;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
namespace AddTableToWord
{
public class Program
{
public static void Main(string[] args)
{
List<string[]> lstData = new List<string[]>() { new string[] { "1", "2", "3" }, new string[] { "3", "2", "1" } };
string[] headerArray = new string[] { "A", "B", "C" };
AddTable("Test.docx", lstData, headerArray);
}
/// <summary>
/// word里面添加table
/// </summary>
/// <param name="wordPath">word文件路径</param>
/// <param name="lstData">数据</param>
/// <param name="headerArray">表头</param>
public static void AddTable(string wordPath, List<string[]> lstData, string[] headerArray)
{
using (WordprocessingDocument doc = WordprocessingDocument.Open(wordPath, true))
{
TableGrid grid = new TableGrid();
int maxColumnNum = lstData.Select(x => x.Count()).Max();
for (int index = 0; index < maxColumnNum; index++)
{
grid.Append(new TableGrid());
}
// 设置表格边框
TableProperties tblProp = new TableProperties(
new TableBorders(
new TopBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 },
new BottomBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 },
new LeftBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 },
new RightBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 },
new InsideHorizontalBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 },
new InsideVerticalBorder() { Val = new EnumValue<BorderValues>(BorderValues.Single), Size = 2 }
)
);
Table table = new Table();
table.Append(tblProp);
// 添加表头. 其实有TableHeader对象的,小弟用不来.
TableRow headerRow = new TableRow();
foreach (string headerStr in headerArray)
{
TableCell cell = new TableCell();
cell.Append(new Paragraph(new Run(new Text(headerStr))));
headerRow.Append(cell);
资源评论
weixin_38675777
- 粉丝: 3
- 资源: 918
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功