http://www.aspose.com/docs/display/wordsnet/Aspose.Words.Tables.Row+Class

Retrieves the index of a row in a table.

获得行索引

[C#]

int rowIndex = table.IndexOf(row);

Shows how to make a clone of the last row of a table and append it to the table.

克隆最后一行并添加到表格

[C#]

Document doc = new Document(MyDir + "Table.SimpleTable.doc");

// Retrieve the first table in the document.
Table table = (Table)doc.GetChild(NodeType.Table, 0, true); // Clone the last row in the table.
Row clonedRow = (Row)table.LastRow.Clone(true); // Remove all content from the cloned row's cells. This makes the row ready for
// new content to be inserted into.
foreach (Cell cell in clonedRow.Cells)
cell.RemoveAllChildren(); // Add the row to the end of the table.
table.AppendChild(clonedRow); doc.Save(MyDir + "Table.AddCloneRowToTable Out.doc");

Shows how to iterate through all tables in the document and display the content from each cell.

遍历所有表格并显示每个单元格的内容

[C#]

Document doc = new Document(MyDir + "Table.Document.doc");

// Here we get all tables from the Document node. You can do this for any other composite node
// which can contain block level nodes. For example you can retrieve tables from header or from a cell
// containing another table (nested tables).
NodeCollection tables = doc.GetChildNodes(NodeType.Table, true); // Iterate through all tables in the document
foreach (Table table in tables)
{
// Get the index of the table node as contained in the parent node of the table
int tableIndex = table.ParentNode.ChildNodes.IndexOf(table);
Console.WriteLine("Start of Table {0}", tableIndex); // Iterate through all rows in the table
foreach (Row row in table.Rows)
{
int rowIndex = table.Rows.IndexOf(row);
Console.WriteLine("\tStart of Row {0}", rowIndex); // Iterate through all cells in the row
foreach (Cell cell in row.Cells)
{
int cellIndex = row.Cells.IndexOf(cell);
// Get the plain text content of this cell.
string cellText = cell.ToString(SaveFormat.Text).Trim();
// Print the content of the cell.
Console.WriteLine("\t\tContents of Cell:{0} = \"{1}\"", cellIndex, cellText);
}
//Console.WriteLine();
Console.WriteLine("\tEnd of Row {0}", rowIndex);
}
Console.WriteLine("End of Table {0}", tableIndex);
Console.WriteLine();
}

Shows how to build a nested table without using DocumentBuilder.

不用documentbuilder类创建嵌套表格

[C#]

public void NestedTablesUsingNodeConstructors()
{
Document doc = new Document(); // Create the outer table with three rows and four columns.
Table outerTable = CreateTable(doc, 3, 4, "Outer Table");
// Add it to the document body.
doc.FirstSection.Body.AppendChild(outerTable); // Create another table with two rows and two columns.
Table innerTable = CreateTable(doc, 2, 2, "Inner Table");
// Add this table to the first cell of the outer table.
outerTable.FirstRow.FirstCell.AppendChild(innerTable); doc.Save(MyDir + "Table.CreateNestedTable Out.doc"); Assert.AreEqual(2, doc.GetChildNodes(NodeType.Table, true).Count); // ExSkip
} /// <summary>
/// Creates a new table in the document with the given dimensions and text in each cell.
/// </summary>
private Table CreateTable(Document doc, int rowCount, int cellCount, string cellText)
{
Table table = new Table(doc); // Create the specified number of rows.
for (int rowId = 1; rowId <= rowCount; rowId++)
{
Row row = new Row(doc);
table.AppendChild(row); // Create the specified number of cells for each row.
for (int cellId = 1; cellId <= cellCount; cellId++)
{
Cell cell = new Cell(doc);
row.AppendChild(cell);
// Add a blank paragraph to the cell.
cell.AppendChild(new Paragraph(doc)); // Add the text.
cell.FirstParagraph.AppendChild(new Run(doc, cellText));
}
} return table;
}

Shows how to insert a table using the constructors of nodes.

使用节点构造函数创建表格

[C#]

Document doc = new Document();

// We start by creating the table object. Note how we must pass the document object
// to the constructor of each node. This is because every node we create must belong
// to some document.
Table table = new Table(doc);
// Add the table to the document.
doc.FirstSection.Body.AppendChild(table); // Here we could call EnsureMinimum to create the rows and cells for us. This method is used
// to ensure that the specified node is valid, in this case a valid table should have at least one
// row and one cell, therefore this method creates them for us. // Instead we will handle creating the row and table ourselves. This would be the best way to do this
// if we were creating a table inside an algorthim for example.
Row row = new Row(doc);
row.RowFormat.AllowBreakAcrossPages = true;
table.AppendChild(row); // We can now apply any auto fit settings.
table.AutoFit(AutoFitBehavior.FixedColumnWidths); // Create a cell and add it to the row
Cell cell = new Cell(doc);
cell.CellFormat.Shading.BackgroundPatternColor = Color.LightBlue;
cell.CellFormat.Width = 80; // Add a paragraph to the cell as well as a new run with some text.
cell.AppendChild(new Paragraph(doc));
cell.FirstParagraph.AppendChild(new Run(doc, "Row 1, Cell 1 Text")); // Add the cell to the row.
row.AppendChild(cell); // We would then repeat the process for the other cells and rows in the table.
// We can also speed things up by cloning existing cells and rows.
row.AppendChild(cell.Clone(false));
row.LastCell.AppendChild(new Paragraph(doc));
row.LastCell.FirstParagraph.AppendChild(new Run(doc, "Row 1, Cell 2 Text")); doc.Save(MyDir + "Table.InsertTableUsingNodes Out.doc");

Aspose.Words.Tables.Row类操作word表格行的更多相关文章

  1. Aspose.Word 操作word表格的行 插入行 添加行

    rows.insert或rows.add前row必须有单元格cell private void button3_Click(object sender, EventArgs e) {         ...

  2. 黄聪:C#操作Word表格的常见操作(转)

    几种常见C#操作Word表格操作有哪些呢?让我们来看看具体的实例演示: bool saveChange = false; //C#操作Word表格操作 object missing = System. ...

  3. 转发:VB程序操作word表格(文字、图片)

    很多人都知道,用vb操作excel的表格非常简单,但是偏偏项目中碰到了VB操作word表格的部分,google.baidu搜爆了,都没有找到我需要的东西.到是搜索到了很多问这个问题的记录.没办法,索性 ...

  4. Java 操作Word表格——创建嵌套表格、添加/复制表格行或列、设置表格是否禁止跨页断行

    本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表 ...

  5. Java 操作Word表格

    本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表 ...

  6. c#操作word表格

    http://www.webshu.net/jiaocheng/programme/ASPNET/200804/6499.html <% if request("infoid" ...

  7. Delphi 操作word 表格

    var wordApp, WordDoc, WrdSelection, wrdtable: variant; strAdd: string; wdPar,wdRange:OleVariant; iCo ...

  8. Aspose.Word 操作word复杂表格 拆分单元格 复制行 插入行 文字颜色

    private void button3_Click(object sender, EventArgs e)         {             object savePathWord =&q ...

  9. C#中使用Spire.docx操作Word文档

    使用docx一段时间之后,一些地方还是不方便,然后就尝试寻找一种更加简便的方法. 之前有尝试过使用Npoi操作word表格,但是太烦人了,随后放弃,然后发现免费版本的spire不错,并且在莫种程度上比 ...

随机推荐

  1. Windows 2008 利用Filezilla server搭建FTP

    Windows 2008 利用Filezilla server搭建FTP, 安装后总是提示Error Connection To Server Lost , 后来,无意中先安装了IIS,再安装file ...

  2. LeetCode: Path Sum II 解题报告

    Path Sum II Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals ...

  3. 【C#】剪切出图片的一部分

    , , , );     Bitmap bmpNew = bmpBase.Clone(rect, bmpBase.PixelFormat);     // 画像をGIF形式で保存     string ...

  4. Android上面安装Linux的方法

    方法一: 并行安装Linux(不在Android操作系统之上运行,需要设备已经unlocked并且rooted) 我还没玩过.放两个书签: How to Install Ubuntu on Andro ...

  5. nginx 相关问题

    Nginx配置文件nginx.conf 参考:http://www.2cto.com/os/201212/176520.html Nginx自动切分日志: nignx没有自动分开文件存储日志的机制. ...

  6. 通过Jni实现AES的CBC模式加密解密

    AES加密方式基本实现,出现一个问题就是代码的安全性.我们知道java层代码很容易被反编译,很有可能泄漏我们加密方式与密钥 内容,那我们该怎么办呢?我们可以使用c/c++实现加密,编译成So库的形式, ...

  7. cocos2dx 2.x 骨骼动画优化

    本文原链接:http://www.cnblogs.com/zouzf/p/4450861.html 公司用的骨骼动画的版本貌似还停留在2.1之前的年代而已没有更新,该因各种历史原因吧,而有个大项目“一 ...

  8. git pull 指定版本

    git init git remote add origin git@bitbucket.org:huashiyiqike/lstm-hf.git git pull origin master

  9. HTML语言特殊字符对照表(ISO Latin-1字符集)

    HTML字符实体(Character Entities) 有些字符在HTML里有特别的含义,比如小于号<就表示HTML Tag的开始,这个小于号是不显示在我们最终看到的网页里的.那如果我们希望在 ...

  10. 回归 从注释开始 appledoc

    好久没有管理这个blog了,些许空虚.不知道今天的回归能否坚持.简单介绍一个第三方注释 -- appledoc appledoc http://gentlebytes.com/appledoc/ 安装 ...