PowerTools InputMan for Windows Forms 8.0J > InputManの使い方 > 数値コントロール > 書式の設定 > フィールドオブジェクトによる書式設定 |
ここでは、フィールドオブジェクトによる書式設定について説明します。
入力時の書式を設定する入力フィールドには、次の4種類のフィールドが提供されており、これらのフィールドオブジェクトを使って書式を設定することができます。
また、表示フィールドでは、次の8種類のフィールドが提供されています。
フィールドオブジェクトをNumberDisplayFieldCollection コレクションに追加することで 数値の表示書式を作成します。 また、NumberFieldCollection クラスに追加されている各入力フィールドを設定することでフィールドのスタイルを変更することができます。
数値の入力書式を設定するNumberFields コレクションではコレクションのアイテムを追加または削除できません。表示書式は、表示用のNumberDisplayFieldCollection コレクションに、前項で解説したフィールドオブジェクトを組み合わせて作成します。
表示書式を設定するNumberDisplayFieldCollection コレクションにフィールドオブジェクトを追加するには、Add メソッドまたは、AddRange メソッドを使用します。
次のサンプルコードは、数値コントロールに表示書式を設定する例です。
Imports GrapeCity.Win.Editors.Fields ' フィールドをクリアします。 GcNumber1.DisplayFields.Clear() ' 表示フィールドのオブジェクトを作成します。 Dim NumberSignDisplayField1 As New NumberSignDisplayField("\\", "\\-") Dim NumberIntegerPartDisplayField1 As New NumberIntegerPartDisplayField() Dim NumberDecimalSeparatorDisplayField1 As New NumberDecimalSeparatorDisplayField() Dim NumberDecimalPartDisplayField1 As New NumberDecimalPartDisplayField() Dim NumberSignDisplayField2 As New NumberSignDisplayField("(税込)", "(税込)") ' フィールドをコレクションに追加してコントロールに表示書式を設定します。 GcNumber1.DisplayFields.AddRange(New NumberDisplayField() { _ NumberSignDisplayField1, NumberIntegerPartDisplayField1, _ NumberDecimalSeparatorDisplayField1, NumberDecimalPartDisplayField1, _ NumberSignDisplayField2 _ })
using GrapeCity.Win.Editors.Fields; // フィールドをクリアします。 gcNumber1.DisplayFields.Clear(); // 表示フィールドのオブジェクトを作成します。 NumberSignDisplayField numberSignDisplayField1 = new NumberSignDisplayField("\\", "\\-"); NumberIntegerPartDisplayField numberIntegerPartDisplayField1 = new NumberIntegerPartDisplayField(); NumberDecimalSeparatorDisplayField numberDecimalSeparatorDisplayField1 = new NumberDecimalSeparatorDisplayField(); NumberDecimalPartDisplayField numberDecimalPartDisplayField1 = new NumberDecimalPartDisplayField(); NumberSignDisplayField numberSignDisplayField2 = new NumberSignDisplayField("(税込)", "(税込)"); // フィールドをコレクションに追加してコントロールに表示書式を設定します。 gcNumber1.DisplayFields.AddRange(new NumberDisplayField[] { numberSignDisplayField1, numberIntegerPartDisplayField1, numberDecimalSeparatorDisplayField1, numberDecimalPartDisplayField1, numberSignDisplayField2 });
(図) 上記サンプルコードを適用したコントロール
フィールドオブジェクトを NumberDisplayFieldCollection コレクションから削除するには、Remove メソッドまたは、RemoveAt メソッドを使用します。
次のサンプルコードは、NumberDisplayFieldCollection コレクションの先頭のフィールドを削除する例です。
' コレクションの先頭のオブジェクトを削除します。
GcNumber1.DisplayFields.RemoveAt(0)
// コレクションの先頭のオブジェクトを削除します。
gcNumber1.DisplayFields.RemoveAt(0);
デザイン画面ではフィールドオブジェクトを設定できる「入力フィールドの編集」「表示フィールドの編集」エディタから容易な設定が可能です。 このエディタは次のいずれかの方法で起動でき、数値コントロールで設定可能なフィールドを組み合わせて設定します。
入力書式
「入力フィールドの編集」エディタ |
このエディタでは、コレクションにフィールドを追加や編集すると同時に各フィールドのテキストのフォントや色といったスタイルを設定することができます。
ここでは、数値コントロールの入力フィールドに設定可能な4種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
これらのプロパティは、数値コントロールのすべての入力フィールドオブジェクトに共通な設定項目です。
プロパティ | 説明 |
---|---|
BackColor | フィールド背景色を設定します。 |
Font | フィールドに表示される文字列のフォントを設定します。 |
ForeColor | フィールド前景色を設定します。 |
Margin | フィールド領域の外枠の距離を設定します。 コントロールの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding | フィールド領域からテキストの表示エリアまでの距離を設定します。 |
接頭語/接尾語フィールド(NumberSignField クラス)は、接頭語/接尾語を入力するフィールドです。
プロパティ | 説明 |
---|---|
NegativePattern | 数値が負のときに表示する文字列を設定します。 |
PositivePattern | 数値が正のときに表示する文字列を設定します。 |
整数入力フィールド(NumberIntegerPartField クラス)は、整数を入力するフィールドです。
プロパティ | 説明 |
---|---|
GroupSeparator | 整数部の桁区切り記号として表示する文字を設定します。 |
GroupSizes | 整数部の桁区切りを行う桁数を取得または設定します。 |
MaxDigits | 整数部の最大桁数を取得または設定します。 |
MinDigits | 整数部の最小桁数を取得または設定します。 |
SpinIncrement | スピン動作の変化量を取得または設定します。 |
小数点フィールド(NumberDecimalSeparatorField クラス)は、小数点を表すフィールドです。
プロパティ | 説明 |
---|---|
DecimalSeparator | 小数点に表示する文字を設定します。 |
小数入力フィールド(NumberDecimalPartField クラス)は、小数を入力するフィールドです。
プロパティ | 説明 |
---|---|
MaxDigits | 小数部の最大桁数を取得または設定します。 |
MinDigits | 小数部の最小桁数を取得または設定します。 |
SpinIncrement | スピン動作の変化量を取得または設定します。 |
ここでは、数値コントロールの表示フィールドに設定可能な7種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
これらのプロパティは、数値コントロールのすべての表示フィールドオブジェクトに共通な設定項目です。
プロパティ | 説明 |
---|---|
BackColor | フィールド背景色を設定します。 |
Font | フィールドに表示される文字列のフォントを設定します。 |
ForeColor | フィールド前景色を設定します。 |
Margin | フィールド領域の外枠の距離を設定します。 コントロールの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding | フィールド領域からテキストの表示エリアまでの距離を設定します。 |
リテラル文字表示フィールド(NumberLiteralDisplayField クラス)は、コントロールに表示するリテラル文字を設定します。
プロパティ | 説明 |
---|---|
Text | リテラル文字列を設定します。 |
接頭語/接尾語の表示フィールド(NumberSignDisplayField クラス)は、接頭語/接尾語を表示するフィールドです。
プロパティ | 説明 |
---|---|
NegativePattern | 数値が負のときに表示する文字列を設定します。 |
PositivePattern | 数値が正のときに表示する文字列を設定します。 |
整数表示フィールド(NumberIntegerPartDisplayField クラス)は、 整数を表示するフィールドです。
プロパティ | 説明 |
---|---|
GroupSeparator | 整数部の桁区切り記号として表示する文字を設定します。 |
GroupSizes | 整数部の桁区切りを行う桁数を取得または設定します。 |
MinDigits | 整数部の最小桁数を取得または設定します。 |
小数点フィールド(NumberDecimalSeparatorDisplayField クラス)は、 小数点を表示するフィールドです。
プロパティ | 説明 |
---|---|
DecimalSeparator | 小数点に表示する文字を設定します。 |
小数表示フィールド(NumberDecimalPartDisplayField クラス)は、 小数を表示するフィールドです。
プロパティ | 説明 |
---|---|
MaxDigits | 小数部の最大桁数を取得または設定します。 |
MinDigits | 小数部の最小桁数を取得または設定します。 |
漢数字の表示フィールド(NumberDecimalGeneralFormatDisplayField クラス)は、 漢数字を表示するフィールドです。
プロパティ | 説明 |
---|---|
Pattern | 漢数字表記の形式を取得または設定します。 |
下の桁をリテラル文字に置き換えるフィールド(NumberMoneyPatternDisplayField クラス)は、 下3桁を「千」と置き換えるなど、下の桁をリテラル文字に置き換えるフィールドです。
プロパティ | 説明 |
---|---|
DecimalSeparator | 小数点記号を取得または設定します。 |
GroupSeparator | 整数部の桁区切り記号として表示する文字を取得または設定します。 |
Pattern | 書式文字列を取得または設定します。 |
システム書式表示フィールド(NumberSystemFormatDisplayField クラス)は、システムで定義された書式指定子を使用して数字の書式を設定します。
プロパティ | 説明 |
---|---|
Pattern | 書式を表す書式指定子を設定します。 (String型)下表の書式指定子を設定することができます。 |
◆ Pattern プロパティに設定可能な書式指定子
書式指定子 | 説明 |
---|---|
C | 通貨 (例:\123.456) |
D | Decimal (10 進数型) (例:123456) |
G | 全般 (例:-123.456) |
N | Number (例:1,234.56) |
P | パーセント (例:100.00 %) |