Previous topicNext topic
Help > 开发指南 > Excel > API > 示例 > 设置单元格格式 >
如何:添加和移除单元格边框

若要访问和指定单元格边框,请使用 Borders 集合。 若要在单个单元格中访问此集合,请使用 Cell 对象的 Formatting.Borders 属性,该属性继承自 Formatting 接口。若要更改单元格区域的边框,请调用此区域的 CellRange.BeginUpdateFormatting 方法,并使用返回的 Formatting 对象的 Borders 属性来访问和修改 Borders 集合。然后调用 CellRange.EndUpdateFormatting 方法以完成修改。

单元格的每个边框都通过 Borders 集合的相应属性进行访问,并由 Border 对象表示。此对象提供 Border.LineStyle Border.Color 属性,允许您分别指定边框线样式和颜色。BorderLineStyle 枚举器列出可用的线型。边框颜色由 Color  值定义。

提示

将相应边框的“线型”属性设置为“边框线型”。Thin 为相邻单元格指定不同的边框样式。要为“B6”单元格的上边框设置不同的设置,请更改“B5”单元格的下边框,如下所示:

Vb.Net

 Dim range As DevExpress.Spreadsheet.CellRange = sheet.Range("B3:B5") 
range.Borders.BottomBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.Thin

C#
DevExpress.Spreadsheet.CellRange range = sheet.Range["B3:B5"];
range.Borders.BottomBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.Thin;

使用以下属性和方法可以指定单元格或单元格区域的每个特定边框,或一次设置多个边框(例如,所有外部、内部、垂直或水平边框)。

若要在一个步骤中在多个单元格之间共享相同的单元格边框设置,请使用根据需要指定的 Formatting.Borders 属性创建或修改样式,并将此样式分配给所需单元格的 CellRange.Style

此示例演示如何通过修改 Borders 对象为单个单元格和单元格区域指定不同的边框。

Vb.Net
Dim worksheet As DevExpress.Spreadsheet.Worksheet = workbook.Worksheets(0)

'设置单元格的每个特定边框。
Dim cellB2 As DevExpress.Spreadsheet.Cell = worksheet.Cells("B2")
Dim cellB2Borders As DevExpress.Spreadsheet.Borders = cellB2.Borders
cellB2Borders.LeftBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDot
cellB2Borders.LeftBorder.Color = Color.Pink
cellB2Borders.TopBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDotDot
cellB2Borders.TopBorder.Color = Color.HotPink
cellB2Borders.RightBorder.LineStyle = BDevExpress.Spreadsheet.orderLineStyle.MediumDashed
cellB2Borders.RightBorder.Color = Color.DeepPink
cellB2Borders.BottomBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.Medium
cellB2Borders.BottomBorder.Color = Color.Red
cellB2Borders.DiagonalBorderType = DevExpress.Spreadsheet.DiagonalBorderType.Up
cellB2Borders.DiagonalBorderLineStyle = DevExpress.Spreadsheet.BorderLineStyle.Thick
cellB2Borders.DiagonalBorderColor = Color.Red

'设置单元格的对角线边框。
Dim cellC4 As DevExpress.Spreadsheet.Cell = worksheet.Cells("C4")
Dim cellC4Borders As DevExpress.Spreadsheet.Borders = cellC4.Borders
cellC4Borders.SetDiagonalBorders(Color.Orange, DevExpress.Spreadsheet.BorderLineStyle.Double, DevExpress.Spreadsheet.DiagonalBorderType.UpAndDown)

'一步设置单元格的所有外部边界。
Dim cellD6 As DevExpress.Spreadsheet.Cell = worksheet.Cells("D6")
cellD6.Borders.SetOutsideBorders(Color.Gold, DevExpress.Spreadsheet.BorderLineStyle.Double)
'一步设置单元格范围的所有边框。
Dim range1 As DevExpress.Spreadsheet.CellRange = worksheet.Range("B8:F13")
range1.Borders.SetAllBorders(Color.Green, DevExpress.Spreadsheet.BorderLineStyle.Double)

'分别设置单元格范围的所有内部和外部边界。
Dim range2 As DevExpress.Spreadsheet.CellRange = worksheet.Range("C15:F18")
range2.SetInsideBorders(Color.SkyBlue, DevExpress.Spreadsheet.BorderLineStyle.MediumDashed)
range2.Borders.SetOutsideBorders(Color.DeepSkyBlue, DevExpress.Spreadsheet.BorderLineStyle.Medium)

'为单元格范围分别设置所有水平和垂直边框。
Dim range3 As DevExpress.Spreadsheet.CellRange = worksheet.Range("D21:F23")
Dim range3Formatting As DevExpress.Spreadsheet.Formatting = range3.BeginUpdateFormatting()
Dim range3Borders As DevExpress.Spreadsheet.Borders = range3Formatting.Borders
range3Borders.InsideHorizontalBorders.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDot
range3Borders.InsideHorizontalBorders.Color = Color.DarkBlue
range3Borders.InsideVerticalBorders.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDotDot
range3Borders.InsideVerticalBorders.Color = Color.Blue
range3.EndUpdateFormatting(range3Formatting)

'设置单元格范围的每个特定边框。
Dim range4 As DevExpress.Spreadsheet.CellRange = worksheet.Range("E25:F26")
Dim range4Formatting As DevExpress.Spreadsheet.Formatting = range4.BeginUpdateFormatting()
Dim range4Borders As DevExpress.Spreadsheet.Borders = range4Formatting.Borders
range4Borders.SetOutsideBorders(Color.Black, DevExpress.Spreadsheet.BorderLineStyle.Thick)
range4Borders.LeftBorder.Color = Color.Violet
range4Borders.TopBorder.Color = Color.Violet
range4Borders.RightBorder.Color = Color.DarkViolet
range4Borders.BottomBorder.Color = Color.DarkViolet
range4Borders.DiagonalBorderType = DevExpress.Spreadsheet.DiagonalBorderType.UpAndDown
range4Borders.DiagonalBorderLineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashed
range4Borders.DiagonalBorderColor = Color.BlueViolet
range4.EndUpdateFormatting(range4Formatting)

C#
DevExpress.Spreadsheet.Worksheet worksheet = workbook.Worksheets[0];

// 设置单元格的每个特定边框。
DevExpress.Spreadsheet.Cell cellB2 = worksheet.Cells["B2"];
DevExpress.Spreadsheet.Borders cellB2Borders = cellB2.Borders;
cellB2Borders.LeftBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDot;
cellB2Borders.LeftBorder.Color = Color.Pink;
cellB2Borders.TopBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDotDot;
cellB2Borders.TopBorder.Color = Color.HotPink;
cellB2Borders.RightBorder.LineStyle = BDevExpress.Spreadsheet.orderLineStyle.MediumDashed;
cellB2Borders.RightBorder.Color = Color.DeepPink;
cellB2Borders.BottomBorder.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.Medium;
cellB2Borders.BottomBorder.Color = Color.Red;
cellB2Borders.DiagonalBorderType = DevExpress.Spreadsheet.DiagonalBorderType.Up;
cellB2Borders.DiagonalBorderLineStyle = DevExpress.Spreadsheet.BorderLineStyle.Thick;
cellB2Borders.DiagonalBorderColor = Color.Red;

// 设置单元格的对角线边框。
DevExpress.Spreadsheet.Cell cellC4 = worksheet.Cells["C4"];
DevExpress.Spreadsheet.Borders cellC4Borders = cellC4.Borders;
cellC4Borders.SetDiagonalBorders(Color.Orange, DevExpress.Spreadsheet.BorderLineStyle.Double, DevExpress.Spreadsheet.DiagonalBorderType.UpAndDown);

// 一步设置单元格的所有外部边界。
DevExpress.Spreadsheet.Cell cellD6 = worksheet.Cells["D6"];
cellD6.Borders.SetOutsideBorders(Color.Gold, DevExpress.Spreadsheet.BorderLineStyle.Double);
// 一步设置单元格范围的所有边框。
DevExpress.Spreadsheet.CellRange range1 = worksheet.Range["B8:F13"];
range1.Borders.SetAllBorders(Color.Green, DevExpress.Spreadsheet.BorderLineStyle.Double);

// 分别设置单元格范围的所有内部和外部边界。
DevExpress.Spreadsheet.CellRange range2 = worksheet.Range["C15:F18"];
range2.SetInsideBorders(Color.SkyBlue, DevExpress.Spreadsheet.BorderLineStyle.MediumDashed);
range2.Borders.SetOutsideBorders(Color.DeepSkyBlue, DevExpress.Spreadsheet.BorderLineStyle.Medium);

// 为单元格范围分别设置所有水平和垂直边框。
DevExpress.Spreadsheet.CellRange range3 = worksheet.Range["D21:F23"];
DevExpress.Spreadsheet.Formatting range3Formatting = range3.BeginUpdateFormatting();
DevExpress.Spreadsheet.Borders range3Borders = range3Formatting.Borders;
range3Borders.InsideHorizontalBorders.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDot;
range3Borders.InsideHorizontalBorders.Color = Color.DarkBlue;
range3Borders.InsideVerticalBorders.LineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashDotDot;
range3Borders.InsideVerticalBorders.Color = Color.Blue;
range3.EndUpdateFormatting(range3Formatting);

// 设置单元格范围的每个特定边框。
DevExpress.Spreadsheet.CellRange range4 = worksheet.Range["E25:F26"];
DevExpress.Spreadsheet.Formatting range4Formatting = range4.BeginUpdateFormatting();
DevExpress.Spreadsheet.Borders range4Borders = range4Formatting.Borders;
range4Borders.SetOutsideBorders(Color.Black, DevExpress.Spreadsheet.BorderLineStyle.Thick);
range4Borders.LeftBorder.Color = Color.Violet;
range4Borders.TopBorder.Color = Color.Violet;
range4Borders.RightBorder.Color = Color.DarkViolet;
range4Borders.BottomBorder.Color = Color.DarkViolet;
range4Borders.DiagonalBorderType = DevExpress.Spreadsheet.DiagonalBorderType.UpAndDown;
range4Borders.DiagonalBorderLineStyle = DevExpress.Spreadsheet.BorderLineStyle.MediumDashed;
range4Borders.DiagonalBorderColor = Color.BlueViolet;
range4.EndUpdateFormatting(range4Formatting);

下图显示了执行上述代码后应用于单元格的边框(工作簿在 Microsoft® Excel® 中打开)。