グリッド線を消さずにセルの背景色を変更するには?
対象製品
El Tabelle MultiRow 4.0J
詳細
El Tabelle MultiRow 4.0J では、セルの背景色をシートのグリッド線よりも優先して描画します。このため、セルの背景色を設定するとそのセルの周囲のグリッド線は表示されません。
セルの背景色を使用する場合はセル罫線を使用してグリッド線の代わりとなる線を描画します。
セル罫線は、各セルの SetBorder および GetBorder メソッドで描画できます。セル罫線はテンプレートでのみ設定可能です。実行時に変更することはできません。
[Visual Basic]
[C#]
なお、セルの背景色を白(Color.White)に設定している場合は、セルの背景色の既定値(Color.Empty)を使うことでグリッド線を表示させることができます。
[Visual Basic]
[C#]
セルの背景色を使用する場合はセル罫線を使用してグリッド線の代わりとなる線を描画します。
セル罫線は、各セルの SetBorder および GetBorder メソッドで描画できます。セル罫線はテンプレートでのみ設定可能です。実行時に変更することはできません。
[Visual Basic]
Dim objTemplate As New GrapeCity.Win.ElTabelle.Template()
'セルの背景色を設定する
objTemplate.Cells(0, 0).BackColor = Color.Azure
objTemplate.Cells(1, 0).BackColor = Color.White
'セル罫線を設定する
objTemplate.Cells.SetBorder(New GrapeCity.Win.ElTabelle.TRange(0, 0, 1, 1), _
New GrapeCity.Win.ElTabelle.BorderLine(Color.LightGray, GrapeCity.Win.ElTabelle.BorderLineStyle.Thin), _
GrapeCity.Win.ElTabelle.Borders.All)
'テンプレートを適用する
MultiRowSheet1.Template = objTemplate
'セルの背景色を設定する
objTemplate.Cells(0, 0).BackColor = Color.Azure
objTemplate.Cells(1, 0).BackColor = Color.White
'セル罫線を設定する
objTemplate.Cells.SetBorder(New GrapeCity.Win.ElTabelle.TRange(0, 0, 1, 1), _
New GrapeCity.Win.ElTabelle.BorderLine(Color.LightGray, GrapeCity.Win.ElTabelle.BorderLineStyle.Thin), _
GrapeCity.Win.ElTabelle.Borders.All)
'テンプレートを適用する
MultiRowSheet1.Template = objTemplate
[C#]
GrapeCity.Win.ElTabelle.Template objTemplate =
new GrapeCity.Win.ElTabelle.Template();
//セルの背景色を設定する
objTemplate.Cells[0, 0].BackColor = Color.Azure;
objTemplate.Cells[1, 0].BackColor = Color.White;
//セル罫線を設定する
objTemplate.Cells.SetBorder(new GrapeCity.Win.ElTabelle.TRange(0, 0, 1, 1),
new GrapeCity.Win.ElTabelle.BorderLine(Color.LightGray, GrapeCity.Win.ElTabelle.BorderLineStyle.Thin),
GrapeCity.Win.ElTabelle.Borders.All);
//テンプレートを適用する
multiRowSheet1.Template = objTemplate;
new GrapeCity.Win.ElTabelle.Template();
//セルの背景色を設定する
objTemplate.Cells[0, 0].BackColor = Color.Azure;
objTemplate.Cells[1, 0].BackColor = Color.White;
//セル罫線を設定する
objTemplate.Cells.SetBorder(new GrapeCity.Win.ElTabelle.TRange(0, 0, 1, 1),
new GrapeCity.Win.ElTabelle.BorderLine(Color.LightGray, GrapeCity.Win.ElTabelle.BorderLineStyle.Thin),
GrapeCity.Win.ElTabelle.Borders.All);
//テンプレートを適用する
multiRowSheet1.Template = objTemplate;
なお、セルの背景色を白(Color.White)に設定している場合は、セルの背景色の既定値(Color.Empty)を使うことでグリッド線を表示させることができます。
[Visual Basic]
MultiRowSheet1(0, 0, 0).BackColor = Color.White
MultiRowSheet1(0, 0, 1).BackColor = Color.Empty
MultiRowSheet1(0, 0, 1).BackColor = Color.Empty
[C#]
multiRowSheet1[0, 0, 0].BackColor = Color.White;
multiRowSheet1[0, 0, 1].BackColor = Color.Empty;
multiRowSheet1[0, 0, 1].BackColor = Color.Empty;
関連情報
キーワード
HowTo
この文書は、以前は次のFAQ IDで公開されていました : 9543