Cell
Contenuti
[
Nascondere
]Cell class
Rappresenta una cella di tabella.
Per saperne di più, visita ilLavorare con le tabelle articolo di documentazione.
public class Cell : CompositeNode
Costruttori
Nome | Descrizione |
---|---|
Cell(DocumentBase) | Inizializza una nuova istanza diCell classe. |
Proprietà
Nome | Descrizione |
---|---|
CellFormat { get; } | Fornisce l’accesso alle proprietà di formattazione della cella. |
Count { get; } | Ottiene il numero di figli immediati di questo nodo. |
CustomNodeId { get; set; } | Specifica l’identificatore del nodo personalizzato. |
virtual Document { get; } | Ottiene il documento a cui appartiene questo nodo. |
FirstChild { get; } | Ottiene il primo figlio del nodo. |
FirstParagraph { get; } | Ottiene il primo paragrafo tra i figli immediati. |
HasChildNodes { get; } | RestituisceVERO se questo nodo ha nodi figli. |
override IsComposite { get; } | RestituisceVERO poiché questo nodo può avere nodi figli. |
IsFirstCell { get; } | Vero se questa è la prima cella all’interno di una riga; falso altrimenti. |
IsLastCell { get; } | Vero se questa è l’ultima cella all’interno di una riga; falso altrimenti. |
LastChild { get; } | Ottiene l’ultimo figlio del nodo. |
LastParagraph { get; } | Ottiene l’ultimo paragrafo tra i figli immediati. |
NextCell { get; } | Ottiene il successivoCell nodo. |
NextSibling { get; } | Ottiene il nodo immediatamente successivo a questo nodo. |
override NodeType { get; } | RestituisceCell . |
Paragraphs { get; } | Ottiene una raccolta di paragrafi che sono figli immediati della cella. |
ParentNode { get; } | Ottiene il genitore immediato di questo nodo. |
ParentRow { get; } | Restituisce la riga madre della cella. |
PreviousCell { get; } | Ottiene il precedenteCell nodo. |
PreviousSibling { get; } | Ottiene il nodo immediatamente precedente questo nodo. |
Range { get; } | Restituisce aRange oggetto che rappresenta la porzione di documento contenuta in questo nodo. |
Tables { get; } | Ottiene una raccolta di tabelle che sono figli immediati della cella. |
Metodi
Nome | Descrizione |
---|---|
override Accept(DocumentVisitor) | Accetta un visitatore. |
AppendChild(Node) | Aggiunge il nodo specificato alla fine dell’elenco dei nodi secondari per questo nodo. |
Clone(bool) | Crea un duplicato del nodo. |
CreateNavigator() | Crea un navigatore che può essere utilizzato per attraversare e leggere i nodi. |
EnsureMinimum() | Se l’ultimo figlio non è un paragrafo, crea e aggiunge un paragrafo vuoto. |
GetAncestor(NodeType) | Ottiene il primo antenato dell’oggetto specificatoNodeType . |
GetAncestor(Type) | Ottiene il primo antenato del tipo di oggetto specificato. |
GetChild(NodeType, int, bool) | Restituisce un Nesimo nodo figlio che corrisponde al tipo specificato. |
GetChildNodes(NodeType, bool) | Restituisce una raccolta attiva di nodi secondari che corrispondono al tipo specificato. |
GetEnumerator() | Fornisce il supporto per l’iterazione di ogni stile sui nodi figlio di questo nodo. |
override GetText() | Ottiene il testo di questo nodo e di tutti i suoi figli. |
IndexOf(Node) | Restituisce l’indice del nodo figlio specificato nell’array di nodi figlio. |
InsertAfter(Node, Node) | Inserisce il nodo specificato immediatamente dopo il nodo di riferimento specificato. |
InsertBefore(Node, Node) | Inserisce il nodo specificato immediatamente prima del nodo di riferimento specificato. |
NextPreOrder(Node) | Ottiene il nodo successivo in base all’algoritmo di attraversamento dell’albero di preordine. |
PrependChild(Node) | Aggiunge il nodo specificato all’inizio dell’elenco dei nodi secondari per questo nodo. |
PreviousPreOrder(Node) | Ottiene il nodo precedente in base all’algoritmo di attraversamento dell’albero di preordine. |
Remove() | Si rimuove dal genitore. |
RemoveAllChildren() | Rimuove tutti i nodi figlio del nodo corrente. |
RemoveChild(Node) | Rimuove il nodo figlio specificato. |
RemoveSmartTags() | Rimuove tuttoSmartTag nodi discendenti del nodo corrente. |
SelectNodes(string) | Seleziona un elenco di nodi che corrispondono all’espressione XPath. |
SelectSingleNode(string) | Seleziona il primoNode che corrisponde all’espressione XPath. |
ToString(SaveFormat) | Esporta il contenuto del nodo in una stringa nel formato specificato. |
ToString(SaveOptions) | Esporta il contenuto del nodo in una stringa utilizzando le opzioni di salvataggio specificate. |
Osservazioni
Cell
può essere solo figlio di aRow
.
Cell
può contenere nodi a livello di bloccoParagraph
ETable
.
Una cella minima valida deve averne almeno unaParagraph
.
Esempi
Mostra come creare una tabella.
Document doc = new Document();
Table table = new Table(doc);
doc.FirstSection.Body.AppendChild(table);
// Le tabelle contengono righe, che contengono celle, che possono avere paragrafi
// con elementi tipici come percorsi, forme e persino altre tabelle.
// La chiamata al metodo "EnsureMinimum" su una tabella lo garantirà
// la tabella ha almeno una riga, una cella e un paragrafo.
Row firstRow = new Row(doc);
table.AppendChild(firstRow);
Cell firstCell = new Cell(doc);
firstRow.AppendChild(firstCell);
Paragraph paragraph = new Paragraph(doc);
firstCell.AppendChild(paragraph);
// Aggiunge testo alla prima chiamata nella prima riga della tabella.
Run run = new Run(doc, "Hello world!");
paragraph.AppendChild(run);
doc.Save(ArtifactsDir + "Table.CreateTable.docx");
Mostra come scorrere tutte le tabelle del documento e stampare il contenuto di ciascuna cella.
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;
// Possiamo usare il metodo "ToArray" su una raccolta di righe per clonarla in un 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;
// Possiamo utilizzare il metodo "ToArray" su una raccolta di celle per clonarla in un 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");
}
Mostra come creare una tabella nidificata senza utilizzare un generatore di documenti.
public void CreateNestedTable()
{
Document doc = new Document();
// Crea la tabella esterna con tre righe e quattro colonne, quindi aggiungila al documento.
Table outerTable = CreateTable(doc, 3, 4, "Outer Table");
doc.FirstSection.Body.AppendChild(outerTable);
// Crea un'altra tabella con due righe e due colonne e quindi inseriscila nella prima cella della prima tabella.
Table innerTable = CreateTable(doc, 2, 2, "Inner Table");
outerTable.FirstRow.FirstCell.AppendChild(innerTable);
doc.Save(ArtifactsDir + "Table.CreateNestedTable.docx");
}
/// <summary>
/// Crea una nuova tabella nel documento con le dimensioni e il testo specificati in ogni cella.
/// </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);
}
}
// Puoi utilizzare le proprietà "Titolo" e "Descrizione" per aggiungere rispettivamente un titolo e una descrizione alla tua tabella.
// La tabella deve avere almeno una riga prima di poter utilizzare queste proprietà.
// Queste proprietà sono significative per i documenti .docx conformi a ISO / IEC 29500 (vedere la classe OoxmlCompliance).
// Se salviamo il documento in formati precedenti a ISO/IEC 29500, Microsoft Word ignora queste proprietà.
table.Title = "Aspose table title";
table.Description = "Aspose table description";
return table;
}
Guarda anche
- class CompositeNode
- spazio dei nomi Aspose.Words.Tables
- assemblea Aspose.Words