Aplicar estilo en la celda

Aplicar un estilo personalizado en una celda - Un ejemplo

Para cambiar la fuente y el color de una celda utilizando Aspose.Cells.GridDesktop, siga los pasos a continuación:

  • Acceda a cualquier Hoja de Cálculo deseada
  • Acceda a un Celda en la que queremos aplicar un Estilo
  • Obtenga el Estilo de la Celda
  • Establecer las propiedades del Estilo según sus necesidades personalizadas
  • Finalmente, establezca el Estilo de la Celda con el actualizado

Hay muchas propiedades y métodos útiles ofrecidos por el objeto Estilo que pueden ser utilizados por los desarrolladores para personalizar el estilo según sus requisitos. En el siguiente código se demuestra cómo aplicar un estilo personalizado en una celda.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing the worksheet of the Grid that is currently active
Worksheet sheet = gridDesktop1.GetActiveWorksheet();
// Accessing "A1" cell in the worksheet
GridCell cell = sheet.Cells["A1"];
// Adding a value to "A1" cell
cell.Value = "Hello";
// Getting the Style object for the cell
Style style = cell.GetStyle();
// Setting Style properties like border, alignment etc.
style.SetBorderLine(BorderType.Right, BorderLineType.Thick);
style.SetBorderColor(BorderType.Right, Color.Blue);
style.HAlignment = HorizontalAlignmentType.Centred;
style.Color = Color.Yellow;
style.CellLocked = true;
style.VAlignment = VerticalAlignmentType.Top;
// Setting the style of the cell with the customized Style object
cell.SetStyle(style);

Dibujar bordes de las celdas

Usando el objeto Estilo, podemos dibujar bordes de una celda muy fácilmente. Los bordes se pueden dibujar en cualquier color. Además, los desarrolladores también tienen la flexibilidad de elegir un tipo específico de línea que se utilizará para dibujar los bordes alrededor de la celda. Los desarrolladores pueden utilizar los métodos SetBorderLine y SetBorderColor del objeto Estilo para dibujar bordes de cualquier tipo y color. Del mismo modo, para obtener información sobre los bordes de cualquier celda, los desarrolladores también pueden hacer uso de los métodos GetBorderLine y GetBorderColor del objeto Estilo.

Tipos de bordes

Hay seis tipos de bordes soportados por Aspose.Cells.GridDesktop de la siguiente manera:

  • Izquierda, representa el borde izquierdo
  • Derecha, representa el borde derecho
  • Superior, representa el borde superior
  • Inferior, representa el borde inferior
  • Diagonal hacía abajo, representa el borde diagonal hacia abajo
  • Diagonal hacia arriba, representa el borde diagonal hacia arriba

Tipos de líneas de borde

Un borde está compuesto por una línea. Cambiar el tipo de línea cambia la apariencia de un borde. Aspose.Cells.GridDesktop admite muchos tipos de líneas de borde, que también se enumeran a continuación:

  • Ninguno, representa ningún borde
  • Delgado, representa un borde de línea sólida
  • Medio, representa un borde de línea sólida con un ancho de línea igual a 2f
  • Guionado, representa un borde de línea discontinua
  • Punteado, representa un borde de línea de puntos
  • Grueso, representa un borde de línea sólida con un ancho de línea igual a 3f
  • MedioGuionado, representa un borde de línea discontinua con un ancho de línea igual a 2f
  • DelgadoGuionPunteado, representa un borde de línea guion-punteado
  • MedioGuionPunteado, representa un borde de línea guion-punteado con un ancho de línea igual a 2f
  • DelgadoGuionPuntoPunteado, representa un borde de línea guion-punto-punteado
  • MedioGuionPuntoPunteado, representa un borde de línea guion-punto-punteado con un ancho de línea igual a 2f

Resumiendo todo junto - Ejemplo

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing first worksheet of the Grid
Aspose.Cells.GridDesktop.Worksheet sheet = gridDesktop1.Worksheets[0];
// Accessing "B2" cell and setting its value
Aspose.Cells.GridDesktop.GridCell cell = sheet.Cells["B2"];
cell.Value = "None";
// Accessing "D4" cell and setting its value & column width
cell = sheet.Cells["D4"];
cell.Value = "out line Borders";
sheet.Columns[cell.Column].Width = 120;
// Accessing the Style object of "D4" cell and drawing thin red borders around it
Aspose.Cells.GridDesktop.Style style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Thin);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Top, BorderLineType.Thin);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Thin);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Red);
cell.SetStyle(style);
// Accessing "B6" cell and setting its value, row height & column width
cell = sheet.Cells["B6"];
cell.Value = "Border with\ndifferent colors";
sheet.Rows[cell.Row].Height = 40;
sheet.Columns[cell.Column].Width = 110;
// Accessing the Style object of "B6" cell and drawing thin borders of different colors around it
style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Thin);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Green);
style.SetBorderLine(BorderType.Top, BorderLineType.Thin);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Yellow);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Thin);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Blue);
cell.SetStyle(style);
// Accessing "D7" cell and setting its value, row height & column width
cell = sheet.Cells["D7"];
cell.Value = "Border with\ndifferent styles";
sheet.Rows[cell.Row].Height = 40;
sheet.Columns[cell.Column].Width = 110;
// Accessing the Style object of "D7" cell and drawing different borders of different colors around it
style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Medium);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Top, BorderLineType.Dashed);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Yellow);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Dotted);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Black);
cell.SetStyle(style);
// Accessing "B8" cell and drawing a single red border to its bottom side
cell = sheet.Cells["B8"];
cell.Value = "Only one border";
style = cell.GetStyle();
style.SetBorderLine(BorderType.Bottom, BorderLineType.MediumDashDotted);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Red);
cell.SetStyle(style);

Establecer formatos de números

Aspose.Cells.GridDesktop también proporciona tipos de configuración de formatos de números. Hay 58 formatos de número integrados ofrecidos por Aspose.Cells.GridDesktop. Para ver una lista completa de todos los formatos de número admitidos, consulte Formatos de Número Admitidos.

Todos los formatos de número integrados se asignan un número de Índice. Por ejemplo, el número de Índice del formato de número 0.00E+00 es 11. Para utilizar un formato de número integrado en cualquier celda, los desarrolladores pueden establecer la propiedad NumberFormat del objeto Estilo en el número de Índice de ese formato de número específico. Sin embargo, si los desarrolladores necesitan tener su propio formato de número personalizado, también pueden usar la propiedad Personalizada del objeto Estilo.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing first worksheet of the Grid
Aspose.Cells.GridDesktop.Worksheet sheet = gridDesktop1.Worksheets[0];
// Creating a standard Font object that will be applied on cells
System.Drawing.Font font = new System.Drawing.Font("MS Serif", 9f, FontStyle.Bold);
// Accessing and adding values to cells
Aspose.Cells.GridDesktop.GridCell cell = sheet.Cells["B2"];
cell.Value = "General";
cell.SetFont(font);
cell = sheet.Cells["C2"];
cell.Value = 1000;
cell = sheet.Cells["D2"];
cell.Value = "Text";
cell = sheet.Cells["B4"];
cell.Value = "Number";
cell.SetFont(font);
//Accessing the Style object of "C4" cell and setting its number format to index No.2
cell = sheet.Cells["C4"];
cell.Value = 20.00;
Aspose.Cells.GridDesktop.Style style = cell.GetStyle();
// For applying "0.00" format
style.NumberFormat = 2;
cell.SetStyle(style);
// Accessing the Style object of "D4" cell and setting its number format to index No.3
cell = sheet.Cells["D4"];
cell.Value = -2000.00;
style = cell.GetStyle();
// For "#,##0" format
style.NumberFormat = 3;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B6"];
cell.Value = "Currency";
cell.SetFont(font);
// Accessing the Style object of "C6" cell and setting its number format to index No.6
cell = sheet.Cells["C6"];
cell.Value = -120.00;
style = cell.GetStyle();
// For Applying "\"$\"#,##0_);[Red](\"$\"#,##0)" expression
style.NumberFormat = 6;
cell.SetStyle(style);
// Accessing the Style object of "D6" cell and setting its number format to index No.41
cell = sheet.Cells["D6"];
cell.Value = 2400;
style = cell.GetStyle();
// For applying "_(\"$\"* #,##0_);_(\"$\"* (#,##0);_(\"$\"* \"-\"_);_(@_)" expression
style.NumberFormat = 41;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B8"];
cell.Value = "Percent";
cell.SetFont(font);
// Accessing the Style object of "C8" cell and setting its number format to index No.9
cell = sheet.Cells["C8"];
cell.Value = 0.32;
style = cell.GetStyle();
style.NumberFormat = 9;
cell.SetStyle(style);
// Accessing the Style object of "D8" cell and setting its number format to index No.10
cell = sheet.Cells["D8"];
cell.Value = 0.64;
style = cell.GetStyle();
// For applying "0.00%" format
style.NumberFormat = 10;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B10"];
cell.Value = "Scientific";
cell.SetFont(font);
// Accessing the Style object of "C10" cell and setting its number format to index No.11
cell = sheet.Cells["C10"];
cell.Value = 0.51;
style = cell.GetStyle();
// For applying "0.00E+00" format
style.NumberFormat = 11;
cell.SetStyle(style);
// Accessing the Style object of "D10" cell and setting its number format to index No.48
cell = sheet.Cells["D10"];
cell.Value = 32000;
style = cell.GetStyle();
style.NumberFormat = 48;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B12"];
cell.Value = "DateTime";
cell.SetFont(font);
// Accessing the Style object of "C12" cell and setting a custom number format for it
cell = sheet.Cells["C12"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "yyyy-MM-dd";
cell.SetStyle(style);
// Accessing the Style object of "D12" cell and setting its number format to Index No.15
cell = sheet.Cells["D12"];
sheet.Columns[cell.Column].Width = 100;
cell.Value = DateTime.Now;
style = cell.GetStyle();
// For "d-mmm-yy"
style.NumberFormat = 15;
cell.SetStyle(style);
// Accessing the Style object of "C13" cell and setting a custom number format for it
cell = sheet.Cells["C13"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "hh:mm:ss";
cell.SetStyle(style);
// Accessing the Style object of "D13" cell and setting its number format to index No.18
cell = sheet.Cells["D13"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
// For applying "h:mm AM/PM" format
style.NumberFormat = 18;
cell.SetStyle(style);
// Accessing the Style object of "C14" cell and setting a custom number format for it
cell = sheet.Cells["C14"];
sheet.Columns[cell.Column].Width = 160;
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "yyyy-MM-dd hh:mm:ss";
cell.SetStyle(style);