グリッド線を消さずにセルの背景色を変更するには?
対象製品
El Tabelle for .NET 3.0J
詳細
El Tabelle ではセルの背景色がシートのグリッド線よりも優先して描画されます。このため、セルの背景色を設定するとそのセルの周囲のグリッド線は表示されません。
これは El Tabelle の仕様によるものです。セルの背景色を使用する場合はセル罫線を使用してグリッド線の代わりとなる線を描画します。ただし、セルの背景色を白(Color.White)に設定している場合は、セルの背景色の既定値(Color.Empty)を使うことでグリッド線を表示させることができます。
既定のシートに対し、次のコードを実行すると動作の違いを確認できます。
[Visual Basic]
[C#]
MultiRowSheet の場合、次のようにコーディングします。
[Visual Basic]
[C#]
セル罫線は、各セルの SetBorder および GetBorder メソッドで描画できます。
これは El Tabelle の仕様によるものです。セルの背景色を使用する場合はセル罫線を使用してグリッド線の代わりとなる線を描画します。ただし、セルの背景色を白(Color.White)に設定している場合は、セルの背景色の既定値(Color.Empty)を使うことでグリッド線を表示させることができます。
既定のシートに対し、次のコードを実行すると動作の違いを確認できます。
[Visual Basic]
Sheet1(0, 0).BackColor = Color.White
Sheet1(0, 1).BackColor = Color.Empty
Sheet1(0, 1).BackColor = Color.Empty
[C#]
sheet1[0, 0].BackColor = Color.White;
sheet1[0, 1].BackColor = Color.Empty;
sheet1[0, 1].BackColor = Color.Empty;
MultiRowSheet の場合、次のようにコーディングします。
[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;
セル罫線は、各セルの SetBorder および GetBorder メソッドで描画できます。
キーワード
HowTo
この文書は、以前は次のFAQ IDで公開されていました : 6963