Cell

Cell class

Bir tablo hücresini temsil eder.

Daha fazla bilgi edinmek için şu adresi ziyaret edin:Tablolarla Çalışma belgeleme makalesi.

public class Cell : CompositeNode

yapıcılar

İsimTanım
Cell(DocumentBase)Yeni bir örneğini başlatırCell sınıf.

Özellikleri

İsimTanım
CellFormat { get; }Hücrenin biçimlendirme özelliklerine erişim sağlar.
Count { get; }Bu düğümün hemen alt düğümlerinin sayısını alır.
CustomNodeId { get; set; }Özel düğüm tanımlayıcısını belirtir.
virtual Document { get; }Bu düğümün ait olduğu belgeyi alır.
FirstChild { get; }Düğümün ilk çocuğunu alır.
FirstParagraph { get; }En yakın alt paragraflar arasında ilk paragrafı alır.
HasChildNodes { get; }Geri Döndürürdoğru eğer bu düğümün herhangi bir alt düğümü varsa.
override IsComposite { get; }Geri Döndürürdoğru çünkü bu düğümün alt düğümleri olabilir.
IsFirstCell { get; }Bu, satırın içindeki ilk hücreyse Doğru; aksi takdirde Yanlış.
IsLastCell { get; }Bu, satırın içindeki son hücreyse Doğru; aksi takdirde Yanlış.
LastChild { get; }Düğümün son çocuğunu alır.
LastParagraph { get; }En yakın alt paragraflar arasında son paragrafı alır.
NextCell { get; }Bir sonrakini alırCell düğüm.
NextSibling { get; }Bu düğümü hemen takip eden düğümü alır.
override NodeType { get; }Geri DöndürürCell .
Paragraphs { get; }Hücrenin doğrudan alt öğeleri olan paragrafların bir koleksiyonunu alır.
ParentNode { get; }Bu düğümün en yakın üst düğümünü alır.
ParentRow { get; }Hücrenin üst satırını döndürür.
PreviousCell { get; }Öncekini alırCell düğüm.
PreviousSibling { get; }Bu düğümden hemen önceki düğümü alır.
Range { get; }BirRangebu düğümde bulunan bir belgenin bölümünü temsil eden nesne.
Tables { get; }Hücrenin hemen altındaki tabloların bir koleksiyonunu alır.

yöntemler

İsimTanım
override Accept(DocumentVisitor)Bir ziyaretçiyi kabul eder.
override AcceptEnd(DocumentVisitor)Hücrenin sonunu ziyaret eden bir ziyaretçiyi kabul eder.
override AcceptStart(DocumentVisitor)Hücrenin başlangıcını ziyaret eden bir ziyaretçiyi kabul eder.
AppendChild<T>(T)Belirtilen düğümü bu düğüm için alt düğümler listesinin sonuna ekler.
Clone(bool)Düğümün bir kopyasını oluşturur.
CreateNavigator()Düğümleri gezmek ve okumak için kullanılabilen gezgini oluşturur.
EnsureMinimum()Son çocuk bir paragraf değilse, boş bir paragraf oluşturur ve ekler.
GetAncestor(NodeType)Belirtilenin ilk atasını alırNodeType .
GetAncestor(Type)Belirtilen nesne türünün ilk atasını alır.
GetChild(NodeType, int, bool)Belirtilen türle eşleşen N’inci alt düğümü döndürür.
GetChildNodes(NodeType, bool)Belirtilen türle eşleşen alt düğümlerin canlı bir koleksiyonunu döndürür.
GetEnumerator()Bu düğümün alt düğümleri üzerindeki her stil yinelemesi için destek sağlar.
override GetText()Bu düğümün ve tüm alt düğümlerinin metnini alır.
IndexOf(Node)Alt düğüm dizisindeki belirtilen alt düğümün dizinini döndürür.
InsertAfter<T>(T, Node)Belirtilen düğümü belirtilen referans düğümünden hemen sonra ekler.
InsertBefore<T>(T, Node)Belirtilen düğümü belirtilen referans düğümünden hemen önce ekler.
NextPreOrder(Node)Ön sipariş ağacı geçiş algoritmasına göre bir sonraki düğümü alır.
PrependChild<T>(T)Belirtilen düğümü bu düğüm için alt düğümler listesinin başına ekler.
PreviousPreOrder(Node)Ön sipariş ağacı geçiş algoritmasına göre önceki düğümü alır.
Remove()Kendini ana öğeden kaldırır.
RemoveAllChildren()Geçerli düğümün tüm alt düğümlerini kaldırır.
RemoveChild<T>(T)Belirtilen alt düğümü kaldırır.
RemoveSmartTags()Tümünü kaldırırSmartTag geçerli düğümün alt düğümleri.
SelectNodes(string)XPath ifadesiyle eşleşen düğümlerin bir listesini seçer.
SelectSingleNode(string)İlkini seçerNode XPath ifadesiyle eşleşen.
ToString(SaveFormat)Düğümün içeriğini belirtilen biçimde bir dizeye aktarır.
ToString(SaveOptions)Belirtilen kaydetme seçeneklerini kullanarak düğümün içeriğini bir dizeye aktarır.

Notlar

Cell sadece bir çocuğun çocuğu olabilirRow.

Cell blok düzeyinde düğümler içerebilirParagraph VeTable.

Minimum geçerli bir hücrenin en az bir tane olması gerekirParagraph.

Örnekler

Bir tablonun nasıl oluşturulacağını gösterir.

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

// Tablolar, hücreler içeren satırlar ve bu satırların içinde paragraflar olabilir
// tipik elemanlar olan koşular, şekiller ve hatta diğer tablolar ile.
// Bir tabloda "EnsureMinimum" metodunu çağırmak,
// tabloda en az bir satır, hücre ve paragraf var.
Row firstRow = new Row(doc);
table.AppendChild(firstRow);

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

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

// Tablonun ilk satırındaki ilk hücreye metin ekle.
Run run = new Run(doc, "Hello world!");
paragraph.AppendChild(run);

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

Belgedeki tüm tablolarda nasıl gezinileceğini ve her hücrenin içeriğinin nasıl yazdırılacağını gösterir.

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;

    // Bir satır koleksiyonunu diziye kopyalamak için "ToArray" metodunu kullanabiliriz.
    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;

        // Bir hücre koleksiyonunu diziye kopyalamak için "ToArray" metodunu kullanabiliriz.
        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");
}

Belge oluşturucu kullanmadan iç içe geçmiş tablonun nasıl oluşturulacağını gösterir.

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

    // Üç satır ve dört sütundan oluşan dış tabloyu oluştur ve ardından bunu belgeye ekle.
    Table outerTable = CreateTable(doc, 3, 4, "Outer Table");
    doc.FirstSection.Body.AppendChild(outerTable);

    // İki satır ve iki sütundan oluşan başka bir tablo oluştur ve bunu ilk tablonun ilk hücresine ekle.
    Table innerTable = CreateTable(doc, 2, 2, "Inner Table");
    outerTable.FirstRow.FirstCell.AppendChild(innerTable);

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

/// <summary>
/// Belgede, her hücrede belirtilen boyutlar ve metinle yeni bir tablo oluşturur.
/// </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);
        }
    }

    // Tablonuza sırasıyla bir başlık ve açıklama eklemek için "Başlık" ve "Açıklama" özelliklerini kullanabilirsiniz.
    // Bu özellikleri kullanabilmemiz için tablonun en az bir satırının olması gerekir.
    // Bu özellikler ISO/IEC 29500 uyumlu .docx belgeleri için anlamlıdır (OoxmlCompliance sınıfına bakın).
    // Belgeyi ISO/IEC 29500 öncesi biçimlerde kaydedersek, Microsoft Word bu özellikleri yoksayar.
    table.Title = "Aspose table title";
    table.Description = "Aspose table description";

    return table;
}

Ayrıca bakınız