
チェックボックス型セル(CheckBoxCell)は、.NET FrameworkのCheckBoxコントロール(System.Windows.Forms.CheckBox)と同等の機能を提供します。CheckBoxCellを使用すると、ユーザーはオンとオフの値を入力できます。チェックボックスのサイズは、Windowsの設定に依存します。
機能
CheckBoxCellでは、基本セルの機能に加えて、次の機能を使用できます。
各機能の詳細はCheckBoxCellクラスのリファレンスを参照してください。
- チェックボックスの表示と入力
- オン/オフ値の設定と取得
- オン/オフ/不確定値の設定と取得
- オン/オフ/不確定の値の設定
- テキストの表示
各機能の詳細はCheckBoxCellクラスのリファレンスを参照してください。
データ型
CheckBoxCellはObject型の値を保持します。この型はCheckBoxCell.ValueTypeプロパティで確認できます。
入力と表示に使用されるデータ型は、CheckBoxCell.ThreeStateプロパティの設定によって異なります。ThreeStateプロパティがFalseのときは、Boolean型にキャストした値が使用されます。ThreeStateプロパティがTrueのときは、System.Windows.Forms.CheckState型にキャストした値が使用されます。これらの型はCheckBoxCell.FormattedValueTypeプロパティで確認できます。
Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、CheckBoxCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、CheckBoxCell.OnCellParsingメソッドをオーバーライドします。
入力と表示に使用されるデータ型は、CheckBoxCell.ThreeStateプロパティの設定によって異なります。ThreeStateプロパティがFalseのときは、Boolean型にキャストした値が使用されます。ThreeStateプロパティがTrueのときは、System.Windows.Forms.CheckState型にキャストした値が使用されます。これらの型はCheckBoxCell.FormattedValueTypeプロパティで確認できます。
Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、CheckBoxCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、CheckBoxCell.OnCellParsingメソッドをオーバーライドします。
セル編集コントロール
CheckBoxCellのセル編集コントロールはありません。CheckBoxCell.EditTypeプロパティは常にnull参照(Visual BasicではNothing)を返します。
スタイル
CheckBoxCellはCellStyleクラスの次のメンバをサポートしています。セルのスタイルはCheckBoxCell.Styleプロパティで設定します。
GDI+互換モードを有効にするには、UseCompatibleTextRenderingプロパティをTrueに設定します。
| CellStyleメンバ | 有効/無効 |
|---|---|
| BackColor | 有効 |
| BackgroundGradientEffect | 有効 |
| Border | 有効 |
| DataSourceNullValue | 有効 |
| DisabledBackColor | 有効 |
| DisabledForeColor | 有効 |
| DisabledGradientEffect | 有効 |
| EditingBackColor | - |
| EditingForeColor | - |
| Font | 有効 |
| ForeColor | 有効 |
| Format | 有効 |
| FormatProvider | 有効 |
| Image | 有効 |
| ImageAlign | 有効 |
| ImeMode | - |
| ImeSentenceMode | - |
| InputScope | - |
| LineAdjustment | GDI+互換モードの場合のみ有効 |
| Margin | 有効 |
| MouseOverBackColor | 有効 |
| MouseOverForeColor | 有効 |
| MouseOverGradientEffect | 有効 |
| Multiline | 有効 |
| NullValue | 有効 |
| Padding | 有効 |
| PatternColor | 有効 |
| PatternStyle | 有効 |
| SelectionBackColor | 有効 |
| SelectionForeColor | 有効 |
| SelectionGradientEffect | 有効 |
| Tag | 有効 |
| TextAdjustment | GDI+互換モードの場合のみ有効 |
| TextAlign | 有効 |
| TextAngle | GDI+互換モードの場合のみ有効 |
| TextEffect | 有効 |
| TextImageRelation | 有効 |
| TextIndent | 有効 |
| TextVertical | GDI+互換モードの場合のみ有効 |
| UseCompatibleTextRendering | 有効 |
| WordWrap | 有効 |
GDI+互換モードを有効にするには、UseCompatibleTextRenderingプロパティをTrueに設定します。
ショートカットキー
CheckBoxCellでは、Keys.Spaceはチェックの切り替えに割り当てられています。また、Keys.Control+Keys.Cはクリップボードの処理に割り当てられます。これら以外のキーはGcMultiRowコントロールによって処理されます。
イベント
セルの内容領域のクリックに対応した処理を実装するには、GcMultiRow.CellContentClickイベントを使用します。ダブルクリックの場合はGcMultiRow.CellContentDoubleClickイベントです。
セルの値が編集されたときには GcMultiRow.CellEditedFormattedValueChangedイベントが発生します。
セルの値が編集されたときには GcMultiRow.CellEditedFormattedValueChangedイベントが発生します。
標準コントロールとの比較
次の表はCheckBoxCellとSystem.Windows.Forms.CheckBoxコントロール、System.Windows.Forms.DataGridViewCheckBoxCellの主要なプロパティの比較です。
| CheckBoxCell | CheckBox | DataGridViewCheckBoxCell |
|---|---|---|
| Appearance | Appearance | なし |
| CheckAlign | CheckAlign | Style.Alignment |
| FalseValue | なし | FalseValue |
| FlatAppearance | FlatAppearance | なし |
| FlatStyle | FlatStyle | FlatStyle |
| IndeterminateValue | なし | IndeterminateValue |
| Text | Text | なし |
| ThreeState | ThreeState | ThreeState |
| TrueValue | なし | TrueValue |
| なし | AutoCheck | なし |
| なし | Checked | なし |
| なし | CheckState | なし |
| Style.TextAlign | TextAlign | なし |
使用例