Hinzufügen einer Tabelle zu DOCX mit C# mit IronWord
IronWord ermöglicht es Entwicklern, programmgesteuert Tabellen zu Word-Dokumenten in C# hinzuzufügen, indem sie Table Objekte mit angegebenen Zeilen und Spalten erstellen, sie mit Rändern und Farben gestalten und Zellen mit Inhalt füllen, bevor sie als DOCX-Dateien gespeichert werden.
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.
-
1Install IronWord with NuGet Package Manager
-
2Kopieren 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");C# -
3Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronWord in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- C#-Bibliothek zum Hinzufügen von Tabellen zu DOCX herunterladen
- Füllen Sie Zellen mit Inhalten und fügen Sie die Zellen zu Reihen zusammen.
- Tabelle durch Hinzufügen von Zeilen erstellen
- Initialisieren Sie ein neues Word-Dokument mit der Tabelle und fügen Sie die Tabelle hinzu.
- Exportieren Sie das endgültige Word-Dokument.
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 greifen Sie auf jede Zelle mit intuitivem [row, column]-Index zu. 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 erstellt werden, die Table-Klasse bietet umfassende Kontrolle über Inhalt und Präsentation. Das nullbasierte Indizierungssystem vereinfacht die programmgesteuerte Zelliteration, während reichhaltige Stilmöglichkeiten ein professionelles Erscheinungsbild gewährleisten.
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.Style.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");

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 ein TableCell mit anfänglichem Inhalt über den Konstruktor, oder fügen Sie Inhalte schrittweise mit der AddChild-Methode 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();
TextContent headerText = new TextContent("Product Details") { IsBold = true, FontSize = 14 };
header.AddText(headerText);
complexCell.AddChild(header);
// Add multiple text elements
complexCell.AddChild(new TextContent("SKU: "));
complexCell.AddChild(new TextContent("PROD-001") { IsBold = true });
complexCell.AddChild(new TextContent("\nPrice: $49.99"));
// Cells can also contain lists, images, and more
// This demonstrates the versatility of table cells in IronWord
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?
Erkunden Sie alle verfügbaren Optionen für Randwerte mithilfe des BorderValues-Enums:

Die BorderValues-Enumeration bietet umfassende Optionen für die Tabellengestaltung. 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 BorderSize-Eigenschaft arbeitet mit BorderValue, um präzise Kontrolle über die Linienstärke zu bieten, gemessen in Achteln eines Punktes.
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");Imports System.Drawing
' Example: Applying different borders to table sections
Dim styledTable As New Table(4, 4)
' Create distinct border styles for header and body
Dim headerBorder As New BorderStyle With {
.BorderColor = Color.Navy,
.BorderValue = BorderValues.Double,
.BorderSize = 8
}
Dim bodyBorder As New BorderStyle With {
.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 With {
.TopBorder = headerBorder,
.BottomBorder = headerBorder,
.LeftBorder = bodyBorder,
.RightBorder = bodyBorder,
.InsideHorizontalBorder = bodyBorder,
.InsideVerticalBorder = bodyBorder
}
' Zebra striping for better row distinction
styledTable.Zebra = New ZebraColor("F5F5F5", "FFFFFF")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.
What methods are available to populate a table with data in IronWord?
In IronWord, you can populate a table by accessing cells through zero-based indexing and using methods like `AddChild` to insert `TextContent`, images, or other elements into each cell programmatically.
How does IronWord support border styling for tables?
IronWord supports border styling by allowing you to customize border color, value, and size using the `BorderStyle` class. You can create distinct visual hierarchies within your tables for both header and body sections.
Can I nest tables within cells using IronWord?
Yes, IronWord supports nesting tables within cells by using the `AddChild` method. This feature assists in constructing intricate table structures for complex documents.
What are the benefits of using IronWord for table creation in Word documents?
Using IronWord for table creation provides a flexible and programmable approach to document structure, allowing comprehensive content management, detailed styling, and efficient automation for generating professional DOCX files.

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 Handbücher.