Row

Row class

Representerar en tabellrad.

public class Row : CompositeNode

Konstruktörer

namn Beskrivning
Row(DocumentBase) Initierar en ny instans av Rad class.

Egenskaper

namn Beskrivning
Cells { get; } Ger maskinskriven åtkomst till Cell underordnade noder för raden.
ChildNodes { get; } Hämtar alla omedelbara underordnade noder för denna nod.
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örsta Cell i raden.
FirstChild { get; } Får det första barnet i noden.
HasChildNodes { get; } Returnerar sant om denna nod har några underordnade noder.
override IsComposite { get; } Returnerar sant 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 sista Cell i raden.
LastChild { get; } Hämtar nodens sista underordnade.
NextSibling { get; } Hämtar noden omedelbart efter denna nod.
override NodeType { get; } Returnerar NodeType.Row .
ParentNode { get; } Hämtar den omedelbara föräldern till denna nod.
ParentTable { get; } Returnerar den omedelbara överordnade tabellen för raden.
PreviousSibling { get; } Hämtar noden omedelbart före denna nod.
Range { get; } Returnerar en Räckvidd objekt som representerar den del av ett dokument som finns i denna nod.
RowFormat { get; } Ger tillgång till formateringsegenskaperna för raden.

Metoder

namn Beskrivning
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() Reserverad för systemanvändning. IXPathNavigable.
EnsureMinimum() Om Rad har inga celler, skapar och lägger till en Cell .
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(Node, Node) Infogar den angivna noden omedelbart efter den angivna referensnoden.
InsertBefore(Node, Node) 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 allaSmartTag underliggande noder till den aktuella noden.
SelectNodes(string) Väljer en lista med noder som matchar XPath-uttrycket.
SelectSingleNode(string) Väljer den första noden 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

Rad kan bara vara ett barn till en Tabell.

Rad kan innehålla en eller flera Cell knutpunkter.

En minsta giltig rad måste ha minst en Cell.

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