Cell
Inhalt
[
Ausblenden
]Cell class
Stellt eine Tabellenzelle dar.
Um mehr zu erfahren, besuchen Sie dieArbeiten mit Tabellen Dokumentationsartikel.
public class Cell : CompositeNode
Konstrukteure
Name | Beschreibung |
---|---|
Cell(DocumentBase) | Initialisiert eine neue Instanz desCell Klasse. |
Eigenschaften
Name | Beschreibung |
---|---|
CellFormat { get; } | Bietet Zugriff auf die Formatierungseigenschaften der Zelle. |
Count { get; } | Ruft die Anzahl der unmittelbar untergeordneten Elemente dieses Knotens ab. |
CustomNodeId { get; set; } | Gibt die benutzerdefinierte Knotenkennung an. |
virtual Document { get; } | Ruft das Dokument ab, zu dem dieser Knoten gehört. |
FirstChild { get; } | Ruft das erste untergeordnete Element des Knotens ab. |
FirstParagraph { get; } | Ruft den ersten Absatz unter den unmittelbar untergeordneten Elementen ab. |
HasChildNodes { get; } | RückgabenWAHR wenn dieser Knoten untergeordnete Knoten hat. |
override IsComposite { get; } | RückgabenWAHR da dieser Knoten untergeordnete Knoten haben kann. |
IsFirstCell { get; } | Wahr, wenn dies die erste Zelle in einer Zeile ist, andernfalls falsch. |
IsLastCell { get; } | Wahr, wenn dies die letzte Zelle in einer Zeile ist, andernfalls falsch. |
LastChild { get; } | Ruft das letzte untergeordnete Element des Knotens ab. |
LastParagraph { get; } | Ruft den letzten Absatz unter den unmittelbar untergeordneten Elementen ab. |
NextCell { get; } | Ruft den nächstenCell Knoten. |
NextSibling { get; } | Ruft den Knoten ab, der diesem Knoten unmittelbar folgt. |
override NodeType { get; } | RückgabenCell . |
Paragraphs { get; } | Ruft eine Sammlung von Absätzen ab, die unmittelbare untergeordnete Elemente der Zelle sind. |
ParentNode { get; } | Ruft den unmittelbar übergeordneten Knoten dieses Knotens ab. |
ParentRow { get; } | Gibt die übergeordnete Zeile der Zelle zurück. |
PreviousCell { get; } | Ruft die vorherigeCell Knoten. |
PreviousSibling { get; } | Ruft den Knoten ab, der diesem Knoten unmittelbar vorausgeht. |
Range { get; } | Gibt einenRange Objekt, das den Teil eines Dokuments darstellt, der in diesem Knoten enthalten ist. |
Tables { get; } | Ruft eine Sammlung von Tabellen ab, die unmittelbare untergeordnete Elemente der Zelle sind. |
Methoden
Name | Beschreibung |
---|---|
override Accept(DocumentVisitor) | Nimmt einen Besucher auf. |
override AcceptEnd(DocumentVisitor) | Akzeptiert einen Besucher für den Besuch des Zellenendes. |
override AcceptStart(DocumentVisitor) | Akzeptiert einen Besucher für den Besuch des Zellenanfangs. |
AppendChild<T>(T) | Fügt den angegebenen Knoten am Ende der Liste der untergeordneten Knoten für diesen Knoten hinzu. |
Clone(bool) | Erstellt ein Duplikat des Knotens. |
CreateNavigator() | Erstellt einen Navigator, der zum Durchlaufen und Lesen von Knoten verwendet werden kann. |
EnsureMinimum() | Wenn das letzte untergeordnete Element kein Absatz ist, wird ein leerer Absatz erstellt und angehängt. |
GetAncestor(NodeType) | Ruft den ersten Vorfahren des angegebenenNodeType . |
GetAncestor(Type) | Ruft den ersten Vorgänger des angegebenen Objekttyps ab. |
GetChild(NodeType, int, bool) | Gibt einen N-ten untergeordneten Knoten zurück, der dem angegebenen Typ entspricht. |
GetChildNodes(NodeType, bool) | Gibt eine Live-Sammlung von untergeordneten Knoten zurück, die dem angegebenen Typ entsprechen. |
GetEnumerator() | Bietet Unterstützung für die Iteration des For-Each-Stils über die untergeordneten Knoten dieses Knotens. |
override GetText() | Ruft den Text dieses Knotens und aller seiner untergeordneten Knoten ab. |
IndexOf(Node) | Gibt den Index des angegebenen untergeordneten Knotens im untergeordneten Knoten-Array zurück. |
InsertAfter<T>(T, Node) | Fügt den angegebenen Knoten unmittelbar nach dem angegebenen Referenzknoten ein. |
InsertBefore<T>(T, Node) | Fügt den angegebenen Knoten unmittelbar vor dem angegebenen Referenzknoten ein. |
NextPreOrder(Node) | Ruft den nächsten Knoten gemäß dem Pre-Order-Tree-Traversal-Algorithmus ab. |
PrependChild<T>(T) | Fügt den angegebenen Knoten am Anfang der Liste der untergeordneten Knoten für diesen Knoten hinzu. |
PreviousPreOrder(Node) | Ruft den vorherigen Knoten gemäß dem Pre-Order-Tree-Traversal-Algorithmus ab. |
Remove() | Entfernt sich selbst vom übergeordneten Element. |
RemoveAllChildren() | Entfernt alle untergeordneten Knoten des aktuellen Knotens. |
RemoveChild<T>(T) | Entfernt den angegebenen untergeordneten Knoten. |
RemoveSmartTags() | Entfernt alleSmartTag Nachkommenknoten des aktuellen Knotens. |
SelectNodes(string) | Wählt eine Liste von Knoten aus, die dem XPath-Ausdruck entsprechen. |
SelectSingleNode(string) | Wählt den erstenNode das dem XPath-Ausdruck entspricht. |
ToString(SaveFormat) | Exportiert den Inhalt des Knotens in eine Zeichenfolge im angegebenen Format. |
ToString(SaveOptions) | Exportiert den Inhalt des Knotens unter Verwendung der angegebenen Speicheroptionen in eine Zeichenfolge. |
Bemerkungen
Cell
kann nur ein Kind einesRow
.
Cell
kann Knoten auf Blockebene enthaltenParagraph
UndTable
.
Eine minimal gültige Zelle muss mindestens eineParagraph
.
Beispiele
Zeigt, wie eine Tabelle erstellt wird.
Document doc = new Document();
Table table = new Table(doc);
doc.FirstSection.Body.AppendChild(table);
// Tabellen enthalten Zeilen, die Zellen enthalten, die Absätze enthalten können
// mit typischen Elementen wie Läufen, Formen und sogar anderen Tabellen.
// Der Aufruf der Methode "EnsureMinimum" für eine Tabelle stellt sicher, dass
// Die Tabelle hat mindestens eine Zeile, Zelle und einen Absatz.
Row firstRow = new Row(doc);
table.AppendChild(firstRow);
Cell firstCell = new Cell(doc);
firstRow.AppendChild(firstCell);
Paragraph paragraph = new Paragraph(doc);
firstCell.AppendChild(paragraph);
// Fügen Sie der ersten Zelle in der ersten Zeile der Tabelle Text hinzu.
Run run = new Run(doc, "Hello world!");
paragraph.AppendChild(run);
doc.Save(ArtifactsDir + "Table.CreateTable.docx");
Zeigt, wie alle Tabellen im Dokument durchlaufen und der Inhalt jeder Zelle gedruckt wird.
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;
// Wir können die Methode „ToArray“ auf eine Zeilensammlung anwenden, um sie in ein Array zu klonen.
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;
// Wir können die Methode „ToArray“ auf eine Zellensammlung anwenden, um sie in ein Array zu klonen.
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");
}
Zeigt, wie eine verschachtelte Tabelle ohne Verwendung eines Dokumentgenerators erstellt wird.
public void CreateNestedTable()
{
Document doc = new Document();
// Erstellen Sie die äußere Tabelle mit drei Zeilen und vier Spalten und fügen Sie sie dann dem Dokument hinzu.
Table outerTable = CreateTable(doc, 3, 4, "Outer Table");
doc.FirstSection.Body.AppendChild(outerTable);
// Erstellen Sie eine weitere Tabelle mit zwei Zeilen und zwei Spalten und fügen Sie sie dann in die erste Zelle der ersten Tabelle ein.
Table innerTable = CreateTable(doc, 2, 2, "Inner Table");
outerTable.FirstRow.FirstCell.AppendChild(innerTable);
doc.Save(ArtifactsDir + "Table.CreateNestedTable.docx");
}
/// <summary>
/// Erstellt eine neue Tabelle im Dokument mit den angegebenen Abmessungen und Text in jeder Zelle.
/// </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);
}
}
// Mit den Eigenschaften „Titel“ und „Beschreibung“ können Sie Ihrer Tabelle jeweils einen Titel und eine Beschreibung hinzufügen.
// Die Tabelle muss mindestens eine Zeile haben, bevor wir diese Eigenschaften verwenden können.
// Diese Eigenschaften sind für ISO/IEC 29500-konforme .docx-Dokumente von Bedeutung (siehe Klasse OoxmlCompliance).
// Wenn wir das Dokument in Formaten vor ISO/IEC 29500 speichern, ignoriert Microsoft Word diese Eigenschaften.
table.Title = "Aspose table title";
table.Description = "Aspose table description";
return table;
}
Siehe auch
- class CompositeNode
- namensraum Aspose.Words.Tables
- Montage Aspose.Words