Más información Xceed Words para .NET
Esta semana veremos cómo añadir Tablas a tus documentos.
Tablas
Una Tabla es simplemente una vista en cuadrícula, con filas y columnas, que permite mostrar información de forma clara y organizada.
Añadir tablas
La adición de una tabla a un documento se realiza llamando a AñadirTabla en el Documento. Hay 2 opciones:
Indicando el número de filas y columnas:
// Create a new table (initial size of 3 rows and 2 columns).
var table = document.AddTable( 3, 2 );
table.Design = TableDesign.TableGrid;
// Insert the new table to the document
document.InsertTable( table );
Proporcionando una tabla existente:
// Retrieve an existing table (ex: from another document)
var table = document2.Tables[ tableIndex ];
// Insert the table to the document
document.InsertTable( table );
Nota Diseño de la tabla se utiliza para indicar qué diseño aplicar a la tabla. Los valores posibles se encuentran en la propiedad TableDesign enumeración. Hay 50 y pico valores diferentes, sus nombres y una pequeña miniatura de referencia están disponibles en el archivo documentación.
Eliminación de tablas
La eliminación de una Tabla existente de un documento se realiza llamando a Eliminar sobre la mesa.
// Remove an existing table from the document
var table = document.Tables[ tableIndex ];
table.Remove;
Añadir filas
La inserción de filas se realiza llamando a InsertRow sobre la mesa.
// Insert a new Row at the end of a table
var table = document.Tables[ tableIndex ];
table.InsertRow();
Nota InsertRow admite otras 3 sobrecargas:
- (Int32): Inserta una Fila en un lugar específico de esta Tabla.
- (Fila, Booleano): Inserta una copia de la Fila proporcionada al final de esta Tabla, y opcionalmente mantiene el mismo formato que la Fila original.
- (Fila, Int32, Booleano): Inserta una copia de la Fila proporcionada en una ubicación específica de esta Tabla, y opcionalmente mantiene el mismo formato que la Fila original.
Eliminar filas
La eliminación de filas se realiza llamando a EliminarFila en la tabla. Si se llama al método sin ningún parámetro, se eliminará la última fila de la tabla; de lo contrario, se puede pasar un índice para indicar qué fila eliminar.
// Remove the last row from the table
var table = document.Tables[ tableIndex ];
table.RemoveRow();
// Remove a specific row from the table
table.RemoveRow( rowIndex );
Añadir columnas
La inserción de columnas se realiza llamando a InsertarColumna sobre la mesa.
// Insert a new Column at the end of a table
var table = document.Tables[ tableIndex ];
table.InsertColumn();
Nota InsertarColumna admite otra sobrecarga:
- (Int32, Booleano): Inserta una Columna en un lugar específico de esta Tabla.
Eliminar columnas
La eliminación de columnas se realiza llamando a EliminarColumna en la tabla. Si se llama al método sin ningún parámetro, se eliminará la última columna de la tabla; de lo contrario, se puede pasar un índice para indicar qué columna eliminar.
// Remove the last column from the table
var table = document.Tables[ tableIndex ];
table.RemoveColumn();
// Remove a specific column from the table
table.RemoveColumn( colIndex );
Fusión de celdas
La tabla permite combinar varias celdas. Actualmente se admiten 2 escenarios:
Fusionar varias celdas de una misma fila llamando a FusionarCélulas en la Fila:
// Merge the first 3 cells of the first row
var table = document.Tables[ tableIndex ];
table.Rows[ 0 ].MergeCells( 0, 3 );
// Merge the last 2 cells in the third row
var columnCount = table.Rows [ 1 ].ColumnCount;
table.Rows[ 2 ].MergeCells( columnCount - 2, columnCount - 1 );
Fusionar celdas en una columna específica llamando a FusionarCélulasEnColumna sobre la mesa:
// Merge the first cell of rows 2 and 3
var table = document.Tables[ tableIndex ];
table.MergedCellsInColumn( 0, 1, 2 );
Insertar otros elementos
Hay otros métodos disponibles en la Tabla para insertar elementos específicos antes/después de la Tabla. Por ejemplo, utilizando InsertListBeforerSelf o InsertListAfterSelf para insertar una lista. Existen métodos similares para insertar una Página, un Párrafo u otra Tabla.
Ejemplo
El siguiente ejemplo muestra cómo crear una tabla en un Documento, insertar filas en ella y llenar la tabla con datos.
// Create a document.
using( var document = DocX.Create( "InsertRowAndDataTable.docx" ) )
{
// Add a Table of 5 rows and 2 columns into the document and sets its values.
var t = document.AddTable( 5, 2 );
t.Design = TableDesign.ColorfulListAccent1;
t.Alignment = Alignment.center;
t.Rows[ 0 ].Cells[ 0 ].Paragraphs[ 0 ].Append( "Mike" );
t.Rows[ 0 ].Cells[ 1 ].Paragraphs[ 0 ].Append( "65" );
t.Rows[ 1 ].Cells[ 0 ].Paragraphs[ 0 ].Append( "Kevin" );
t.Rows[ 1 ].Cells[ 1 ].Paragraphs[ 0 ].Append( "62" );
t.Rows[ 2 ].Cells[ 0 ].Paragraphs[ 0 ].Append( "Carl" );
t.Rows[ 2 ].Cells[ 1 ].Paragraphs[ 0 ].Append( "60" );
t.Rows[ 3 ].Cells[ 0 ].Paragraphs[ 0 ].Append( "Michael" );
t.Rows[ 3 ].Cells[ 1 ].Paragraphs[ 0 ].Append( "59" );
t.Rows[ 4 ].Cells[ 0 ].Paragraphs[ 0 ].Append( "Shawn" );
t.Rows[ 4 ].Cells[ 1 ].Paragraphs[ 0 ].Append( "57" );
// Add a row at the end of the table and sets its values.
var r = t.InsertRow();
r.Cells[ 0 ].Paragraphs[ 0 ].Append( "Mario" );
r.Cells[ 1 ].Paragraphs[ 0 ].Append( "54" );
// Insert a new Paragraph into the document.
var p = document.InsertParagraph( "Xceed Top Players Points:" );
p.SpacingAfter( 40d );
// Insert the Table after the Paragraph.
p.InsertTableAfterSelf( t );
// Save the document
document.Save();
}
Para más información, consulte el documentación.