在单元格上应用样式
在单元格上应用自定义样式-示例
要使用 Aspose.Cells.GridDesktop 更改单元格的字体和颜色,请按照以下步骤操作:
- 访问任何所需的工作表
- 访问要应用 样式 的 单元格
- 获取 单元格 的 样式
- 根据自定义需求设置 样式 属性
- 最后,使用更新后的 样式 设置 单元格 的 样式
样式 对象提供了许多有用的属性和方法,开发人员可以根据自己的需求自定义样式。在下面的代码中,演示了如何在单元格上应用自定义样式。
// 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); |
绘制单元格的边框
使用 样式 对象,可以非常容易地绘制单元格的边框。边框可以用任何颜色绘制。此外,开发人员还可以灵活选择要用于在单元格周围绘制边框的特定类型的线。开发人员可以使用 Style 对象的 SetBorderLine 和 SetBorderColor 方法绘制任何类型和颜色的边框。类似地,要获取任何单元格的边框信息,开发人员还可以利用 Style 对象的 GetBorderLine 和 GetBorderColor 方法。
边框的类型
Aspose.Cells.GridDesktop支持以下六种边框类型:
- 左 ,表示左边框
- 右 ,表示右边框
- 上 ,表示上边框
- 底部 ,表示底部边框
- DiagonalDown ,表示对角线向下的边框
- DiagonalUp ,表示对角线向上的边框
边框线的类型
边框由一条线组成。更改线的类型会改变边框的外观。Aspose.Cells.GridDesktop支持许多种边框线类型,下面也列出了这些类型:
- None , 代表无边框
- Thin , 代表实线边框
- Medium , 代表宽度为2f的实线边框
- Dashed , 代表虚线边框
- Dotted , 代表点线边框
- Thick , 代表宽度为3f的实线边框
- MediumDashed , 代表宽度为2f的虚线边框
- ThinDashDotted , 代表虚线点线边框
- MediumDashDotted , 代表宽度为2f的虚线点线边框
- ThinDashDotDotted , 代表虚线点点线边框
- MediumDashDotDotted , 代表宽度为2f的虚线点点线边框
总结 - 示例
// 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); |
设置数字格式
Aspose.Cells.GridDesktop还提供了各种数字格式设置。Aspose.Cells.GridDesktop提供了58种内置数字格式。要查看所有支持的数字格式的完整列表,请参阅支持的数字格式。
所有内置数字格式都被分配了一个索引号。 例如,0.00E+00数字格式的索引号是11。要在任何单元格中使用内置数字格式,开发人员可以将Style对象的NumberFormat属性设置为该特定数字格式的索引号。但是,如果开发人员需要自定义数字格式,他们也可以使用Style对象的Custom属性。
// 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); |