ドメインアップダウン型セル(DomainUpDownCell)は、.NET FrameworkのDomainUpDownコントロール(System.Windows.Forms.DomainUpDown)と同等の機能を提供します。このセル型を使用すると、ユーザーにスピンボタンによる文字列の選択を提供できます。
コンボボックス型セルを使用するとドメインアップダウン型セルと同じようにリストから文字列を選択することができますが、ドメインアップダウン型セルは連続する値から前後の値を選択する頻度が高い場合に、コンボボックス型セルよりも素早く操作できるメリットがあります。たとえば、"AAA"、"AA"、"A"、"BBB"のように連続している格付け記号や、"1.受注"、"2.在庫確認"、"3.入金確認"、"4.発送"のように手順の進行と番号とセットで管理している場合などです。
機能
DomainUpDownCellでは、基本セルの機能に加えて、次の機能を使用できます。
各機能の詳細はDomainUpDownCellクラスのリファレンスを参照してください。
- スピンボタンによる値の選択
各機能の詳細はDomainUpDownCellクラスのリファレンスを参照してください。
データ型
DomainUpDownCellはObject型の値を保持します。この型はDomainUpDownCell.ValueTypeプロパティで確認できます。
入力と表示には、String型にキャストした値が使用されます。この型はDomainUpDownCell.FormattedValueTypeプロパティで確認できます。Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、DomainUpDownCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、DomainUpDownCell.OnCellParsingメソッドをオーバーライドします。
入力と表示には、String型にキャストした値が使用されます。この型はDomainUpDownCell.FormattedValueTypeプロパティで確認できます。Object型のToStringメソッドをオーバーライドすると、キャストする際の動作を変更できます。セルに値が読み出される場合の動作を変更するには、DomainUpDownCell.OnCellFormattingメソッドをオーバーライドします。セルから値が書き戻される場合の動作を変更するには、DomainUpDownCell.OnCellParsingメソッドをオーバーライドします。
セル編集コントロール
DomainUpDownCellの値はDomainUpDownEditingControlコントロールで編集できます。このコントロールはIEditingControlインタフェースとSystem.Windows.Forms.DomainUpDownクラスを継承しています。セル編集コントロールの型はDomainUpDownCell.EditTypeプロパティで確認できます。
スタイル
DomainUpDownCellはCellStyleクラスの次のメンバをサポートしています。セルのスタイルはDomainUpDownCell.Styleプロパティで設定します。
GDI+互換モードを有効にするには、UseCompatibleTextRenderingプロパティをTrueに設定します。
CellStyleメンバ | 非編集時 | 編集時 |
---|---|---|
BackColor | 有効 | 有効 |
Border | 有効 | 有効 |
DataSourceNullValue | 有効 | 有効 |
DisabledBackColor | 有効 | - |
DisabledForeColor | 有効 | - |
Font | 有効 | 有効 |
ForeColor | 有効 | 有効 |
Format | 有効 | 有効 |
FormatProvider | 有効 | 有効 |
GradientColors | 有効 | - |
GradientDirection | 有効 | - |
GradientStyle | 有効 | - |
Image | 有効 | - |
ImageAlign | 有効 | - |
ImeMode | 有効 | 有効 |
ImeSentenceMode | 有効 | 有効 |
InputScope | 有効 | 有効 |
LineAdjustment | GDI+互換モードの場合のみ有効 | - |
Margin | 有効 | 有効 |
Multiline | 有効 | - |
NullValue | 有効 | 有効 |
Padding | 有効 | 有効 |
PatternColor | 有効 | - |
PatternStyle | 有効 | - |
SelectionBackColor | 有効 | - |
SelectionForeColor | 有効 | - |
Tag | 有効 | 有効 |
TextAdjustment | GDI+互換モードの場合のみ有効 | - |
TextAlign | 有効 | 有効 |
TextAngle | GDI+互換モードの場合のみ有効 | - |
TextEffect | 有効 | - |
TextImageRelation | 有効 | - |
TextIndent | 有効 | - |
TextVertical | GDI+互換モードの場合のみ有効 | - |
UseCompatibleTextRendering | 有効 | - |
WordWrap | 有効 | - |
GDI+互換モードを有効にするには、UseCompatibleTextRenderingプロパティをTrueに設定します。
ショートカットキー
次の表はDomainUpDownCellの編集時に処理されるキーとGcMultiRowコントロールで処理されるキーの一覧です。
修飾子 | キー | ドメインアップダウン型セル | GcMultiRow |
---|---|---|---|
なし | Keys.PageUp | - | 有効 |
Keys.PageDown | - | 有効 | |
Keys.End | 有効 | - | |
Keys.Home | 有効 | - | |
Keys.Left | 有効 | - | |
Keys.Right | 有効 | - | |
Keys.Up | 有効 | - | |
Keys.Down | 有効 | - | |
Keys.Insert | - | - | |
Keys.Delete | 有効 | - | |
Keys.BackSpace | 有効 | - | |
Keys.Control | Keys.PageUp | 有効 | - |
Keys.PageDown | 有効 | - | |
Keys.End | - | 有効 | |
Keys.Home | - | 有効 | |
Keys.Left | 有効 | - | |
Keys.Right | 有効 | - | |
Keys.Up | - | 有効 | |
Keys.Down | - | 有効 | |
Keys.A | 有効 | - | |
Keys.C | 有効 | - | |
Keys.V | 有効 | - | |
Keys.X | 有効 | - | |
Keys.Z | 有効 | - | |
Keys.Shift | Keys.Left | 有効 | - |
Keys.Right | 有効 | - | |
Keys.Up | 有効 | - | |
Keys.Down | 有効 | - | |
Keys.Home | 有効 | - | |
Keys.End | 有効 | - |
- Keys.Control+Keys.Cは、複数のセルが選択されている場合はGcMultiRowコントロールによって処理されます。
- Keys.LeftはDomainUpDownCellのキャレットが先頭の文字よりも前にあるとき、GcMultiRowコントロールによって処理されます。
- Keys.RightはDomainUpDownCellのキャレットが最後の文字よりも後ろにあるとき、GcMultiRowコントロールによって処理されます。
- Keys.UpはDomainUpDownEditingControl.SelectedIndexプロパティが0または-1でかつDomainUpDownEditingControl.WrapプロパティがFalseのとき、GcMultiRowコントロールによって処理されます。
- Keys.DownはDomainUpDownEditingControl.SelectedIndexプロパティが0または-1でかつDomainUpDownEditingControl.WrapプロパティがFalseのとき、GcMultiRowコントロールによって処理されます。
イベント
セルの内容領域のクリックに対応した処理を実装するには、GcMultiRow.CellContentClickイベントを使用します。ダブルクリックの場合はGcMultiRow.CellContentDoubleClickイベントです。
セルの値が変更されたときの処理を実装するには、GcMultiRow.CellEditedFormattedValueChangedイベントを使用します。
DomainUpDownCellを編集中のイベントに対応した処理は、DomainUpDownEditingControlクラスのイベントを使用します。DomainUpDownEditingControlクラスでは、System.Windows.Forms.DomainUpDownクラスと同じイベントを使用できます。
セルの値が変更されたときの処理を実装するには、GcMultiRow.CellEditedFormattedValueChangedイベントを使用します。
DomainUpDownCellを編集中のイベントに対応した処理は、DomainUpDownEditingControlクラスのイベントを使用します。DomainUpDownEditingControlクラスでは、System.Windows.Forms.DomainUpDownクラスと同じイベントを使用できます。