■8537 / ) |
Re[1]: DataGridViewでのセルの枠線について |
□投稿者/ 魔界の仮面弁士 (441回)-(2007/10/02(Tue) 17:26:32)
|
■No8536 (えりんぎ さん) に返信 > あるデータを表示するのに、ひとつのセル内に二つの画像を表示したり、 > ひとつのセルに画像とテキストの両方を表示したりする必要がでてきました。 自前で描画すれば、一つのセル内に複数のデータを表示できますね。
たとえば下記の最下段の図のような表現方法とか。 http://msdn2.microsoft.com/ja-jp/library/aa730882%28vs.80%29.aspx
蛇足までに、DataGridView 関係のサンプル。 http://windowsclient.net/downloads/folders/applications/entry1304.aspx
> ただ、見た目上はあくまでもひとつのセル内に表示されているようにしたいため > 間にある境界線を消したいのですが、方法がわかりません。 ?? ここでいう境界線とは何ですか? (ひとつのセルなのですよね)
状況がよく分かりませんが、単一のセルであろうと、複数のセルであろうと、 自前で描画している限りは、「境界線を描画する/しない」というだけの事かと。
> 一部のセルの左(もしくは右)の境界線だけ消すなどということはできるのでしょうか? DataGridView の CellPainting イベントで処理するとか、 セルクラスの描画処理を書き換えるとか。たとえば……。
Public Class Form1 Private Sub Form1_Load(……) Handles MyBase.Load DataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.Single DataGridView1.RowCount = 5 DataGridView1.ColumnCount = 5
DataGridView1(1, 1) = New Test() End Sub
Class Test Inherits DataGridViewTextBoxCell
Protected Overrides Sub PaintBorder(……)
advancedBorderStyle.Right = DataGridViewAdvancedCellBorderStyle.None
MyBase.PaintBorder(graphics, clipBounds, bounds, cellStyle, advancedBorderStyle) End Sub End Class End Class
|
|