イメージ型セルは、.NET FrameworkのPictureBoxコントロール(System.Windows.Forms.PictureBox)と同等の機能を提供します。ImageCellを使用すると、セルに簡単に画像を表示できます。
機能
データ型
ImageCellはObject型の値を保持します。この型はImageCell.ValueTypeプロパティで確認できます。
表示に使用されるデータ型は、ImageCell.ValueIsIconプロパティの設定によって異なります。ValueIsIconプロパティがFalseのときは、System.Drawing.Image型の値が使用されます。ValueIsIconプロパティがTrueのときは、System.Drawing.Icon型の値が使用されます。これらの型はImageCell.FormattedValueTypeプロパティで確認できます。
Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、ImageCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、ImageCell.OnCellParsingメソッドをオーバーライドします。
表示に使用されるデータ型は、ImageCell.ValueIsIconプロパティの設定によって異なります。ValueIsIconプロパティがFalseのときは、System.Drawing.Image型の値が使用されます。ValueIsIconプロパティがTrueのときは、System.Drawing.Icon型の値が使用されます。これらの型はImageCell.FormattedValueTypeプロパティで確認できます。
Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、ImageCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、ImageCell.OnCellParsingメソッドをオーバーライドします。
セル編集コントロール
ImageCellのセル編集コントロールはありません。ImageCell.EditTypeプロパティは常にnull参照(Visual BasicではNothing)を返します。
スタイル
ImageCellはCellStyleクラスの次のメンバをサポートしています。セルのスタイルはImageCell.Styleプロパティで設定します。
ImageCell.Style.Imageプロパティに設定した画像は、ImageCell.Imageプロパティの画像の上に描画されます。
CellStyleメンバ | 有効/無効 |
---|---|
BackColor | 有効 |
Border | 有効 |
DataSourceNullValue | 有効 |
DisabledBackColor | 有効 |
DisabledForeColor | - |
Font | - |
ForeColor | - |
Format | - |
FormatProvider | - |
GradientColors | 有効 |
GradientDirection | 有効 |
GradientStyle | 有効 |
Image | 有効 |
ImageAlign | 有効 |
ImeMode | - |
ImeSentenceMode | - |
InputScope | - |
LineAdjustment | - |
Margin | 有効 |
Multiline | - |
NullValue | 有効 |
Padding | 有効 |
PatternColor | 有効 |
PatternStyle | 有効 |
SelectionBackColor | 有効 |
SelectionForeColor | - |
Tag | 有効 |
TextAdjustment | - |
TextAlign | - |
TextAngle | - |
TextEffect | - |
TextImageRelation | - |
TextIndent | - |
TextVertical | - |
UseCompatibleTextRendering | - |
WordWrap | - |
ImageCell.Style.Imageプロパティに設定した画像は、ImageCell.Imageプロパティの画像の上に描画されます。
ショートカットキー
ImageCellで処理されるショートカットキーはありません。
イベント
セルの内容領域のクリックに対応した処理を実装するには、GcMultiRow.CellContentClickイベントを使用します。ダブルクリックの場合はGcMultiRow.CellContentDoubleClickイベントです。
使用例