Wie man Tabelle zu DOCX C# | IronWord hinzufügt

Hinzufügen einer Tabelle zu DOCX mit C#35; mit IronWord

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronWord ermöglicht es Entwicklern, Word-Dokumenten in C# programmatisch Tabellen hinzuzufügen, indem sie Table-Objekte mit bestimmten Zeilen und Spalten erstellen, sie mit Rahmen und Farben gestalten und die Zellen mit Inhalt füllen, bevor sie als DOCX-Dateien gespeichert werden.

als-Überschrift:2(Schnellstart: Erstellen und Speichern einer Tabelle mit einem Aufruf)

Dieses Beispiel zeigt, wie man eine Tabelle in IronWord erstellt. Konstruieren Sie die Tabelle mit Abmessungen, wenden Sie Stile an, fügen Sie Inhalte hinzu, fügen Sie sie in ein Dokument ein und speichern Sie sie. Sie können in wenigen Minuten eine DOCX-Datei mit einer gestylten Tabelle erstellen.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronWord mit dem NuGet-Paketmanager.

    PM > Install-Package IronWord

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var table = new IronWord.Models.Table(3,4);
    var doc = new IronWord.WordDocument();
    doc.AddTable(table);
    doc.SaveAs("QuickTable.docx");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronWord in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer

Wie füge ich eine Tabelle zu meinem Word-Dokument hinzu?

Eine Tabelle ist ein wesentlicher Bestandteil von Word-Dokumenten. Zuerst instanziieren Sie die Table-Klasse, indem Sie die Anzahl der Zeilen und Spalten angeben. Konfigurieren Sie das Styling der Tabelle, einschließlich Hintergrundfarbe, Schattierung, Rahmen, Zebrastreifen und Breite. Zweitens: Zugriff auf jede Zelle durch intuitive [Zeile, Spalte]-Indizierung. Fügen Sie zu jeder Zelle Text, Bilder, Formen, Absätze oder sogar Tabellen hinzu. Fügen Sie schließlich die Tabelle in das Word-Dokument ein.

Tabellen in IronWord bieten eine flexible Grundlage für die Organisation von strukturierten Daten in Word-Dokumenten. Ob Rechnungen, Berichte oder Datenzusammenfassungen, die Klasse Table bietet umfassende Kontrolle über Inhalt und Darstellung. Das Null-basierte Indexierungssystem vereinfacht die programmatische Iteration der Zellen, während umfangreiche Styling-Optionen für ein professionelles Erscheinungsbild sorgen.

TippsAlle Zeilen- und Spalten-Indexpositionen folgen der Null-basierten Indizierung.

:path=/static-assets/word/content-code-examples/how-to/add-table-add-table.cs
using IronWord;
using IronWord.Models;
using IronWord.Models.Enums;

WordDocument doc = new WordDocument();

// Create table
Table table = new Table(5, 3);

// Configure border style
BorderStyle borderStyle = new BorderStyle();
borderStyle.BorderColor = Color.Black;
borderStyle.BorderValue = BorderValues.Thick;
borderStyle.BorderSize = 5;

// Configure table border
TableBorders tableBorders = new TableBorders()
{
    TopBorder = borderStyle,
    RightBorder = borderStyle,
    BottomBorder = borderStyle,
    LeftBorder = borderStyle,
};

// Apply styling
table.Zebra = new ZebraColor("FFFFFF", "dddddd");
table.Borders = tableBorders;

// Populate table
table[0, 0] = new TableCell(new TextContent("Number"));
table[0, 1] = new TableCell(new TextContent("First Name"));
table[0, 2] = new TableCell(new TextContent("Last Name"));
for (int i = 1; i < table.Rows.Count; i++)
{
    table[i, 0].AddChild(new TextContent($"{i}"));
    table[i, 1].AddChild(new TextContent($"---"));
    table[i, 2].AddChild(new TextContent($"---"));
}

// Add table
doc.AddTable(table);

doc.Save("document.docx");
Imports IronWord
Imports IronWord.Models
Imports IronWord.Models.Enums

Private doc As New WordDocument()

' Create table
Private table As New Table(5, 3)

' Configure border style
Private borderStyle As New BorderStyle()
borderStyle.BorderColor = Color.Black
borderStyle.BorderValue = BorderValues.Thick
borderStyle.BorderSize = 5

' Configure table border
Dim tableBorders As New TableBorders() With {
	.TopBorder = borderStyle,
	.RightBorder = borderStyle,
	.BottomBorder = borderStyle,
	.LeftBorder = borderStyle
}

' Apply styling
table.Zebra = New ZebraColor("FFFFFF", "dddddd")
table.Borders = tableBorders

' Populate table
table(0, 0) = New TableCell(New TextContent("Number"))
table(0, 1) = New TableCell(New TextContent("First Name"))
table(0, 2) = New TableCell(New TextContent("Last Name"))
For i As Integer = 1 To table.Rows.Count - 1
	table(i, 0).AddChild(New TextContent($"{i}"))
	table(i, 1).AddChild(New TextContent($"---"))
	table(i, 2).AddChild(New TextContent($"---"))
Next i

' Add table
doc.AddTable(table)

doc.Save("document.docx")
$vbLabelText   $csharpLabel
Word-Dokument zeigt leere 4x3-Tabelle mit den Spalten Nummer, Vorname, Nachname und abwechselnder Zeilenschattierung

Die AddChild-Methode der TableCell-Klasse akzeptiert ein ContentElement-Objekt, das Absätze, Bilder, Formen und Tabellen enthält. Dies ermöglicht verschachtelte Tabellen für komplexe Anwendungsfälle.

Bei der Arbeit mit Tabellenzellen bietet IronWord mehrere Ansätze für das Inhaltsmanagement. Instanziieren Sie eine TableCell mit anfänglichem Inhalt mit dem Konstruktor, oder fügen Sie schrittweise Inhalte mit der Methode AddChild hinzu. Diese Flexibilität ermöglicht den Aufbau komplexer Zellstrukturen, die verschiedene Inhaltstypen kombinieren. So kann eine einzelne Zelle beispielsweise einen Kopfabsatz, gefolgt von einem Bild und einer verschachtelten Tabelle für detaillierte Spezifikationen enthalten.

Hier ist ein Beispiel, das fortgeschrittene Zellpopulationstechniken demonstriert:

// Example: Creating cells with mixed content
TableCell complexCell = new TableCell();

// Add a styled paragraph
Paragraph header = new Paragraph();
header.Add(new TextContent("Product Details").Bold().FontSize = 14);
complexCell.AddChild(header);

// Add multiple text elements
complexCell.AddChild(new TextContent("SKU: "));
complexCell.AddChild(new TextContent("PROD-001").Bold());
complexCell.AddChild(new TextContent("\nPrice: $49.99"));

// Cells can also contain lists, images, and more
// This demonstrates the versatility of table cells in IronWord
// Example: Creating cells with mixed content
TableCell complexCell = new TableCell();

// Add a styled paragraph
Paragraph header = new Paragraph();
header.Add(new TextContent("Product Details").Bold().FontSize = 14);
complexCell.AddChild(header);

// Add multiple text elements
complexCell.AddChild(new TextContent("SKU: "));
complexCell.AddChild(new TextContent("PROD-001").Bold());
complexCell.AddChild(new TextContent("\nPrice: $49.99"));

// Cells can also contain lists, images, and more
// This demonstrates the versatility of table cells in IronWord
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Welche Styling-Optionen kann ich auf Tabellen anwenden?

IronWord bietet umfangreiche Styling-Funktionen für Tabellen und ermöglicht so die Erstellung optisch ansprechender und professioneller Dokumente. Neben grundlegenden Rändern und Farben können Sie auch die Auffüllung und Ausrichtung von Zellen steuern und bedingte Formatierungen durch Zebrastreifen anwenden. Das Styling-System kombiniert Leistung mit intuitivem Design, indem es vertraute Eigenschaftsnamen und klare Werteaufzählungen verwendet.

Welche Rahmenstile sind verfügbar?

Erforschen Sie alle verfügbaren Optionen für Randwerte mit dem BorderValues enum:

Menü für Word-Rahmenstile mit Optionen wie Einfach, Doppelt, Dreifach, Gepunktet, Gestrichelt, Welle und verschiedenen Kombinationen von Stärken

Die Aufzählung BorderValues bietet umfassende Optionen für die Tabellenästhetik. Jeder Stil, von einfachen einzelnen Linien bis hin zu komplexen Mustern wie Wellen und Punkten, dient bestimmten Designzwecken. Geschäftsdokumente profitieren von professionellen doppelten oder dreifachen Umrandungen, während kreative Dokumente Wellen- oder DashDot-Muster verwenden. Die Eigenschaft BorderSize arbeitet mit BorderValue zusammen, um eine präzise Steuerung der Liniendicke, gemessen in Achtelpunkten, zu ermöglichen.

Hier ist ein praktisches Beispiel, das verschiedene Rahmenkonfigurationen zeigt:

// Example: Applying different borders to table sections
Table styledTable = new Table(4, 4);

// Create distinct border styles for header and body
BorderStyle headerBorder = new BorderStyle
{
    BorderColor = Color.Navy,
    BorderValue = BorderValues.Double,
    BorderSize = 8
};

BorderStyle bodyBorder = new BorderStyle
{
    BorderColor = Color.Gray,
    BorderValue = BorderValues.Dotted,
    BorderSize = 3
};

// Apply different borders to different parts of the table
// This creates visual hierarchy and improves readability
styledTable.Borders = new TableBorders
{
    TopBorder = headerBorder,
    BottomBorder = headerBorder,
    LeftBorder = bodyBorder,
    RightBorder = bodyBorder,
    InsideHorizontalBorder = bodyBorder,
    InsideVerticalBorder = bodyBorder
};

// Zebra striping for better row distinction
styledTable.Zebra = new ZebraColor("F5F5F5", "FFFFFF");
// Example: Applying different borders to table sections
Table styledTable = new Table(4, 4);

// Create distinct border styles for header and body
BorderStyle headerBorder = new BorderStyle
{
    BorderColor = Color.Navy,
    BorderValue = BorderValues.Double,
    BorderSize = 8
};

BorderStyle bodyBorder = new BorderStyle
{
    BorderColor = Color.Gray,
    BorderValue = BorderValues.Dotted,
    BorderSize = 3
};

// Apply different borders to different parts of the table
// This creates visual hierarchy and improves readability
styledTable.Borders = new TableBorders
{
    TopBorder = headerBorder,
    BottomBorder = headerBorder,
    LeftBorder = bodyBorder,
    RightBorder = bodyBorder,
    InsideHorizontalBorder = bodyBorder,
    InsideVerticalBorder = bodyBorder
};

// Zebra striping for better row distinction
styledTable.Zebra = new ZebraColor("F5F5F5", "FFFFFF");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Tabellenbreite und Alignment-Eigenschaften bieten zusätzliche Layout-Kontrolle. Setzen Sie Tabellen auf bestimmte Breiten oder Prozentsätze, richten Sie sie innerhalb des Dokuments aus und steuern Sie die Interaktion mit dem umgebenden Inhalt. Zu den Styling-Optionen auf Zellebene gehören individuelle Hintergrundfarben, Textausrichtung und Auffüllungsanpassungen, die eine granulare Kontrolle über jeden Aspekt des Tabellenaussehens ermöglichen.

Diese Styling-Optionen ermöglichen die Erstellung von Tabellen, die den Designanforderungen eines jeden Dokuments entsprechen, von einfachen Datenrastern bis hin zu komplexen Finanzberichten mit mehreren visuellen Hierarchien.

Häufig gestellte Fragen

Wie kann ich in einem Word-Dokument eine Tabelle mit bestimmten Abmessungen erstellen?

Mit IronWord können Sie eine Tabelle erstellen, indem Sie die Table-Klasse instanziieren und die Anzahl der Zeilen und Spalten angeben. Verwenden Sie zum Beispiel 'var table = new IronWord.Models.Table(3,4);', um eine Tabelle mit 3 Zeilen und 4 Spalten zu erstellen. Fügen Sie sie dann einem WordDocument-Objekt hinzu und speichern Sie sie als DOCX-Datei.

Kann ich Tabellen mit Rahmen und Farben programmatisch gestalten?

Ja, IronWord ermöglicht es Ihnen, ein umfassendes Tabellen-Styling zu konfigurieren, einschließlich Hintergrundfarben, Schattierungen, Rahmen, Zebrastreifen und Breite. Sie können diese Stile auf Ihr Tabellenobjekt anwenden, bevor Sie es dem Word-Dokument hinzufügen.

Wie kann ich auf bestimmte Zellen in einer Tabelle zugreifen und sie ausfüllen?

IronWord verwendet die nullbasierte Indizierung für den Zugriff auf Tabellenzellen. Sie können auf die Zellen mit der intuitiven [Zeile, Spalte]-Notation zugreifen und sie dann mit verschiedenen Inhaltstypen wie Text, Bildern, Formen, Absätzen oder sogar verschachtelten Tabellen auffüllen.

Welche Arten von Inhalten kann ich zu Tabellenzellen hinzufügen?

Mit der TableCell-Klasse von IronWord können Sie über die AddChild-Methode, die ContentElement-Objekte akzeptiert, mehrere Inhaltstypen hinzufügen. Dazu gehören Absätze, Bilder, Formen und sogar Tabellen zur Erstellung verschachtelter Tabellenstrukturen.

Ist es möglich, verschachtelte Tabellen innerhalb von Tabellenzellen zu erstellen?

Ja, IronWord unterstützt verschachtelte Tabellen. Da die AddChild-Methode ContentElement-Objekte einschließlich Tabellen akzeptiert, können Sie eine Tabelle innerhalb einer Tabellenzelle hinzufügen, um komplexe Anforderungen an die Datenorganisation zu erfüllen.

Wie kann ich am schnellsten eine DOCX-Datei mit einer Tabelle erstellen?

Der schnellste Ansatz mit IronWord besteht darin, ein Table-Objekt mit Dimensionen zu erstellen, ein WordDocument zu instanziieren, die Tabelle mit AddTable() hinzuzufügen und mit SaveAs() zu speichern. Dieser gesamte Prozess kann in nur 4 Codezeilen abgeschlossen werden.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 28,054 | Version: 2025.12 gerade veröffentlicht