Previous topicNext topic
Help > 开发指南 > Excel > API > 示例 > 设置单元格格式 >
如何:创建或修改单元格样式

创建自定义样式

创建新样式

使用 Workbook.Styles 集合的 StyleCollection.Add 方法创建具有给定名称的新样式。样式的格式设置与“普通”内置样式相同。使用 Style 对象的属性指定新样式的格式特征。

Vb.Net
'将“我的风格”名称下的新风格添加到风格集合中。
Dim myStyle As DevExpress.Spreadsheet.Style = workbook.Styles.Add("My Style")

'指定样式的格式特征。
myStyle.BeginUpdate()
Try
    '将字体颜色设置为蓝色。
    myStyle.Font.Color = Color.Blue

    '将字体大小设置为12。
    myStyle.Font.Size = 12

    '将文本居中放置在单元格中。
    myStyle.Alignment.Horizontal = DevExpress.Spreadsheet.SpreadsheetHorizontalAlignment.Center

    '设置背景填充。
    myStyle.Fill.BackgroundColor = Color.LightBlue
    myStyle.Fill.PatternType = DevExpress.Spreadsheet.PatternType.LightGray
    myStyle.Fill.PatternColor = Color.Yellow
Finally
    myStyle.EndUpdate()
End Try

C#
// 将“我的风格”名称下的新风格添加到风格集合中。
DevExpress.Spreadsheet.Style myStyle = workbook.Styles.Add("My Style");

// 指定样式的格式特征。
myStyle.BeginUpdate();
try
{
    // 将字体颜色设置为蓝色。
    myStyle.Font.Color = Color.Blue;
    
    // 将字体大小设置为12。
    myStyle.Font.Size = 12;
    
    // 将文本居中放置在单元格中。
    myStyle.Alignment.Horizontal = DevExpress.Spreadsheet.SpreadsheetHorizontalAlignment.Center;
    
    // 设置背景填充。
    myStyle.Fill.BackgroundColor = Color.LightBlue;
    myStyle.Fill.PatternType = DevExpress.Spreadsheet.PatternType.LightGray;
    myStyle.Fill.PatternColor = Color.Yellow;
}
finally
{
    myStyle.EndUpdate();
}

基于内置样式创建新样式

Vb.Net
'在“我的好风格”名称下添加一个新风格到风格集合中。
Dim myGoodStyle As DevExpress.Spreadsheet.Style = workbook.Styles.Add("我的好风格")

'从内置的Good样式复制所有格式设置。
myGoodStyle.CopyFrom(BuiltInStyleId.Good)

'如果需要,可以修改样式的格式特征。
'...

C#
// 在“我的好风格”名称下添加一个新风格到风格集合中。
DevExpress.Spreadsheet.Style myGoodStyle = workbook.Styles.Add("我的好风格");

// 从内置的Good样式复制所有格式设置。
myGoodStyle.CopyFrom(BuiltInStyleId.Good);

// 如果需要,可以修改样式的格式特征。
// ...

基于现有单元格格式创建新样式

使用带有 range 参数的 StyleCollection.Add 方法重载,基于现有单元格或单元格区域的格式属性创建自定义样式。

Vb.Net
'根据“B2”单元格的格式设置创建样式。
Dim customStyle As DevExpress.Spreadsheet.Style = workbook.Styles.Add("Custom Style", worksheet("B2"))

'如果需要,可以修改样式的格式特征。
'...

C#
// 根据“B2”单元格的格式设置创建样式。
DevExpress.Spreadsheet.Style customStyle = workbook.Styles.Add("Custom Style", worksheet["B2"]);

// 如果需要,可以修改样式的格式特征。
// ...

修改样式

Vb.Net
'访问要修改的样式。
Dim customStyle As DevExpress.Spreadsheet.Style = workbook.Styles("Custom Style")

'更改样式的格式特征。
customStyle.BeginUpdate()
Try
    customStyle.Fill.BackgroundColor = Color.Gold
    ' ...
Finally
    customStyle.EndUpdate()
End Try

C#
// 访问要修改的样式。
DevExpress.Spreadsheet.Style customStyle = workbook.Styles["Custom Style"];

// 更改样式的格式特征。
customStyle.BeginUpdate();
try
{
    customStyle.Fill.BackgroundColor = Color.Gold;
    // ...
}
finally
{
    customStyle.EndUpdate();
}

还可以使用 CellRange.Style 属性来访问和修改应用于特定单元格或单元格区域的样式。样式修改将传播到使用此样式的所有其他单元格。

Vb.Net

'修改应用于“F10”单元格的样式。
workbook.Worksheets(0).Cells("F10").Style.Fill.BackgroundColor = Color.HotPink 

'修改应用于“K8:M11”单元格范围的样式。
workbook.Worksheets(0).Range.Parse("K8:M11").Style.Font.Color = Color.Red

C#
// 修改应用于“F10”单元格的样式。
workbook.Worksheets[0].Cells["F10"].Style.Fill.BackgroundColor = Color.HotPink;

// 修改应用于“K8:M11”单元格范围的样式。
workbook.Worksheets[0].Range.Parse["K8:M11"].Style.Font.Color = Color.Red;