Row

Row class

Representerar en tabellrad.

För att lära dig mer, besökArbeta med tabeller dokumentationsartikel.

public class Row : CompositeNode

Konstruktörer

namnBeskrivning
Row(DocumentBase)Initierar en ny instans avRow class.

Egenskaper

namnBeskrivning
Cells { get; }Ger maskinskriven åtkomst tillCell underordnade noder för raden.
Count { get; }Hämtar antalet omedelbara barn till denna nod.
CustomNodeId { get; set; }Anger anpassad nodidentifierare.
virtual Document { get; }Hämtar dokumentet som denna nod tillhör.
FirstCell { get; }Returnerar den förstaCell i raden.
FirstChild { get; }Får det första barnet i noden.
HasChildNodes { get; }ReturnerarSann om denna nod har några undernoder.
override IsComposite { get; }ReturnerarSann eftersom denna nod kan ha underordnade noder.
IsFirstRow { get; }True om detta är den första raden i en tabell; falskt annars.
IsLastRow { get; }Sant om detta är den sista raden i en tabell; falskt annars.
LastCell { get; }Returnerar den sistaCell i raden.
LastChild { get; }Hämtar nodens sista underordnade.
NextRow { get; }Får nästaRow nod.
NextSibling { get; }Hämtar noden omedelbart efter denna nod.
override NodeType { get; }ReturnerarRow .
ParentNode { get; }Hämtar den omedelbara föräldern till denna nod.
ParentTable { get; }Returnerar den omedelbara överordnade tabellen för raden.
PreviousRow { get; }Hämtar föregåendeRow nod.
PreviousSibling { get; }Hämtar noden omedelbart före denna nod.
Range { get; }Returnerar enRange objekt som representerar den del av ett dokument som finns i denna nod.
RowFormat { get; }Ger tillgång till formateringsegenskaperna för raden.

Metoder

namnBeskrivning
override Accept(DocumentVisitor)Accepterar en besökare.
AppendChild(Node)Lägger till den angivna noden i slutet av listan över underordnade noder för denna nod.
Clone(bool)Skapar en dubblett av noden.
CreateNavigator()Skapar navigator som kan användas för att korsa och läsa noder.
EnsureMinimum()OmRow har inga celler, skapar och lägger till enCell .
GetAncestor(NodeType)Hämtar den första förfadern till den angivnaNodeType .
GetAncestor(Type)Hämtar den första förfadern till den angivna objekttypen.
GetChild(NodeType, int, bool)Returnerar en N:te underordnad nod som matchar den angivna typen.
GetChildNodes(NodeType, bool)Returnerar en aktiv samling av underordnade noder som matchar den angivna typen.
GetEnumerator()Tillhandahåller stöd för varje stiliteration över undernoderna för denna nod.
override GetText()Hämtar texten för alla celler i den här raden inklusive slutet av radens tecken.
IndexOf(Node)Returnerar indexet för den angivna undernoden i den underordnade nodmatrisen.
InsertAfter(NodeNode)Infogar den angivna noden omedelbart efter den angivna referensnoden.
InsertBefore(NodeNode)Infogar den angivna noden omedelbart före den angivna referensnoden.
NextPreOrder(Node)Hämtar nästa nod enligt algoritmen för förbeställningsträdet.
PrependChild(Node)Lägger till den angivna noden i början av listan över underordnade noder för denna nod.
PreviousPreOrder(Node)Hämtar föregående nod enligt algoritmen för förbeställningsträdet.
Remove()Tar bort sig själv från föräldern.
RemoveAllChildren()Tar bort alla undernoder för den aktuella noden.
RemoveChild(Node)Tar bort den angivna underordnade noden.
RemoveSmartTags()Tar bort allaSmartTagunderliggande noder till den aktuella noden.
SelectNodes(string)Väljer en lista med noder som matchar XPath-uttrycket.
SelectSingleNode(string)Väljer den förstaNode som matchar XPath-uttrycket.
ToString(SaveFormat)Exporterar innehållet i noden till en sträng i angivet format.
ToString(SaveOptions)Exporterar innehållet i noden till en sträng med de angivna sparalternativen.

Anmärkningar

Row kan bara vara ett barn till enTable.

Row kan innehålla en eller fleraCell knutpunkter.

En minsta giltig rad måste ha minst enCell.

Exempel

Visar hur man skapar en tabell.

Document doc = new Document();
Table table = new Table(doc);
doc.FirstSection.Body.AppendChild(table);

// Tabeller innehåller rader, som innehåller celler, som kan ha stycken
// med typiska element som körningar, former och till och med andra tabeller.
// Att anropa metoden "EnsureMinimum" på en tabell säkerställer det
// tabellen har minst en rad, cell och stycke.
Row firstRow = new Row(doc);
table.AppendChild(firstRow);

Cell firstCell = new Cell(doc);
firstRow.AppendChild(firstCell);

Paragraph paragraph = new Paragraph(doc);
firstCell.AppendChild(paragraph);

// Lägg till text till det första anropet i den första raden i tabellen.
Run run = new Run(doc, "Hello world!");
paragraph.AppendChild(run);

doc.Save(ArtifactsDir + "Table.CreateTable.docx");

Visar hur man itererar genom alla tabeller i dokumentet och skriver ut innehållet i varje cell.

Document doc = new Document(MyDir + "Tables.docx");
TableCollection tables = doc.FirstSection.Body.Tables;

Assert.AreEqual(2, tables.ToArray().Length);

for (int i = 0; i < tables.Count; i++)
{
    Console.WriteLine($"Start of Table {i}");

    RowCollection rows = tables[i].Rows;

    // Vi kan använda "ToArray"-metoden på en radsamling för att klona den till en array.
    Assert.AreEqual(rows, rows.ToArray());
    Assert.AreNotSame(rows, rows.ToArray());

    for (int j = 0; j < rows.Count; j++)
    {
        Console.WriteLine($"\tStart of Row {j}");

        CellCollection cells = rows[j].Cells;

        // Vi kan använda "ToArray"-metoden på en cellsamling för att klona den till en array.
        Assert.AreEqual(cells, cells.ToArray());
        Assert.AreNotSame(cells, cells.ToArray());

        for (int k = 0; k < cells.Count; k++)
        {
            string cellText = cells[k].ToString(SaveFormat.Text).Trim();
            Console.WriteLine($"\t\tContents of Cell:{k} = \"{cellText}\"");
        }

        Console.WriteLine($"\tEnd of Row {j}");
    }

    Console.WriteLine($"End of Table {i}\n");
}

Visar hur man bygger en kapslad tabell utan att använda ett dokumentbyggare.

public void CreateNestedTable()
{
    Document doc = new Document();

    // Skapa den yttre tabellen med tre rader och fyra kolumner och lägg sedan till den i dokumentet.
    Table outerTable = CreateTable(doc, 3, 4, "Outer Table");
    doc.FirstSection.Body.AppendChild(outerTable);

    // Skapa ytterligare en tabell med två rader och två kolumner och infoga den sedan i den första tabellens första cell.
    Table innerTable = CreateTable(doc, 2, 2, "Inner Table");
    outerTable.FirstRow.FirstCell.AppendChild(innerTable);

    doc.Save(ArtifactsDir + "Table.CreateNestedTable.docx");
}

/// <summary>
/// Skapar en ny tabell i dokumentet med givna dimensioner och text i varje cell.
/// </summary>
private static Table CreateTable(Document doc, int rowCount, int cellCount, string cellText)
{
    Table table = new Table(doc);

    for (int rowId = 1; rowId <= rowCount; rowId++)
    {
        Row row = new Row(doc);
        table.AppendChild(row);

        for (int cellId = 1; cellId <= cellCount; cellId++)
        {
            Cell cell = new Cell(doc);
            cell.AppendChild(new Paragraph(doc));
            cell.FirstParagraph.AppendChild(new Run(doc, cellText));

            row.AppendChild(cell);
        }
    }

    // Du kan använda egenskaperna "Titel" och "Beskrivning" för att lägga till en titel respektive en beskrivning till din tabell.
    // Tabellen måste ha minst en rad innan vi kan använda dessa egenskaper.
    // Dessa egenskaper är meningsfulla för ISO / IEC 29500-kompatibla .docx-dokument (se klassen OoxmlCompliance).
    // Om vi sparar dokumentet i pre-ISO/IEC 29500-format ignorerar Microsoft Word dessa egenskaper.
    table.Title = "Aspose table title";
    table.Description = "Aspose table description";

    return table;
}

Se även