作成日: 2022/08/19 最終更新日: 2022/08/19
文書種別
使用方法
詳細
旧スタイルシステムの場合(LegacyBehaviors = Style)、名前付きスタイルを使用することが可能ですが、新しいスタイルシステムでは有効に動作しません。
新しいスタイルシステムで使用可能な新APIではIStyleインターフェースを使用してスタイルを宣言しておき、セルのスタイルに設定することが出来ます。
なお、IStyleインターフェースは新APIであるため、SPREADデザイナを使用して設定することは出来ません。
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' データの設定
For i = 0 To FpSpread1.ActiveSheet.RowCount - 1
FpSpread1.ActiveSheet.SetValue(i, 0, 0 - i Mod 3)
For j = 1 To FpSpread1.ActiveSheet.ColumnCount - 1
FpSpread1.ActiveSheet.SetValue(i, j, $"R{i}C{j}")
Next
Next
' スタイルの宣言
Dim style1 As GrapeCity.Spreadsheet.IStyle = FpSpread1.AsWorkbook().Styles.Add("myStyle1")
style1.Font.Color = GrapeCity.Spreadsheet.Color.FromArgb(System.Drawing.Color.Purple.ToArgb())
style1.Font.Name = "メイリオ"
style1.Font.Size = 12
style1.Font.Bold = True
style1.Interior.ColorIndex = 7
style1.Borders.LineStyle = GrapeCity.Spreadsheet.BorderLineStyle.Double
' 1列目が「0」の場合、その行にスタイルを設定する
For i = 0 To FpSpread1.ActiveSheet.RowCount - 1
If FpSpread1.ActiveSheet.Cells(i, 0).Value = 0 Then
FpSpread1.AsWorkbook().ActiveSheet.Rows(i).Style = style1
End If
Next
'' スタイルの削除
'style1.Delete()
'' 特定行のみスタイルを既定に戻す
'Dim normalStyle = FpSpread1.AsWorkbook().Styles(GrapeCity.Spreadsheet.BuiltInStyle.Normal)
'FpSpread1.ActiveSheet.AsWorksheet().Rows(0).Style = normalStyle
End Sub
◎サンプルコード(C#)
private void Form1_Load(object sender, EventArgs e)
{
// データの設定
for (var i = 0; i <= fpSpread1.ActiveSheet.RowCount - 1; i++)
{
fpSpread1.ActiveSheet.SetValue(i, 0, 0 - i % 3);
for (var j = 1; j <= fpSpread1.ActiveSheet.ColumnCount - 1; j++)
fpSpread1.ActiveSheet.SetValue(i, j, $"R{i}C{j}");
}
// スタイルの宣言
GrapeCity.Spreadsheet.IStyle style1 = fpSpread1.AsWorkbook().Styles.Add("myStyle1");
style1.Font.Color = GrapeCity.Spreadsheet.Color.FromArgb(System.Drawing.Color.Purple.ToArgb());
style1.Font.Name = "メイリオ";
style1.Font.Size = 12;
style1.Font.Bold = true;
style1.Interior.ColorIndex = 7;
style1.Borders.LineStyle = GrapeCity.Spreadsheet.BorderLineStyle.Double;
// 1列目が「0」の場合、その行にスタイルを設定する
for (var i = 0; i <= fpSpread1.ActiveSheet.RowCount - 1; i++)
{
if (fpSpread1.ActiveSheet.Cells[i, 0].Value is 0)
fpSpread1.ActiveSheet.AsWorksheet().Rows[i].Style = style1;
}
Console.WriteLine(fpSpread1.ActiveSheet.AsWorksheet().Rows[0].Style.Name);
// スタイルの削除
//style1.Delete();
// 特定行のみスタイルを既定に戻す
//var normalStyle = fpSpread1.AsWorkbook().Styles[GrapeCity.Spreadsheet.BuiltInStyle.Normal];
//fpSpread1.ActiveSheet.AsWorksheet().Rows[0].Style = normalStyle;
}
<実行イメージ>
