概要
CalendarGcDateTimeCellTypeには、表示にInputManのGcDateコントロールのフィールドオブジェクトのサブセットが提供されます。
入力時の書式を設定する入力フィールドには、次の11種類のフィールドが提供されており、これらのフィールドオブジェクトを使って書式を設定することができます。
表示フィールドでは、次の14種類のフィールドが提供されています。
また、GcDateTimeのフィールドオブジェクトはInputManのGcDateコントロールと共通です。
これらのフィールドオブジェクトをDateFieldCollectionまたは、DateDisplayFieldCollectionコレクションに追加するには、Addメソッドまたは、AddRangeメソッドを使用します。
次のサンプルコードは、CalendarGcDateTimeCellTypeに入力書式を設定する例です。DateFieldCollection.AddRangeメソッドを使用してDateFieldCollectionコレクションにフィールドを追加しています。
Imports InputManCell = GrapeCity.Win.CalendarGrid.InputMan
Dim today As DateTime = DateTime.Today
Dim GcDateTimeCellType As New InputManCell.CalendarGcDateTimeCellType()
' フィールドをクリアします。
GcDateTimeCellType.Fields.Clear()
' フィールドをクリアします。
GcDateTimeCellType.Fields.Clear()
GcDateTimeCellType.DisplayFields.Clear()
' 入力フィールドのオブジェクトを作成します。
Dim dateYearField1 As New InputManCell.DateYearField(InputManCell.YearDigitType.FourDigitYear)
Dim dateLiteralField1 As New InputManCell.DateLiteralField("/")
Dim dateMonthField1 As New InputManCell.DateMonthField(InputManCell.MonthPattern.Number)
Dim dateLiteralField2 As New InputManCell.DateLiteralField("/")
Dim dateDayField1 As New InputManCell.DateDayField()
Dim dateLiteralField3 As New InputManCell.DateLiteralField(" ")
Dim dateHourField1 As New InputManCell.DateHourField()
Dim dateLiteralField4 As New InputManCell.DateLiteralField(":")
Dim dateMinuteField1 As New InputManCell.DateMinuteField()
Dim dateLiteralField5 As New InputManCell.DateLiteralField(":")
Dim dateSecondField1 As New InputManCell.DateSecondField()
' フィールドをコレクションに追加してセルに入力書式を設定します。
GcDateTimeCellType.Fields.AddRange(New InputManCell.DateField() { _
dateYearField1, dateLiteralField1, dateMonthField1, _
dateLiteralField2, dateDayField1, dateLiteralField3, _
dateHourField1, dateLiteralField4, dateMinuteField1, _
dateLiteralField5, dateSecondField1})
' 表示フィールドのオブジェクトを作成します。
Dim dateYearDisplayDield1 As New InputManCell.DateYearDisplayField(False)
Dim dateLiteralDisplayField1 As New InputManCell.DateLiteralDisplayField("年")
Dim dateMonthDisplayField1 As New InputManCell.DateMonthDisplayField(False)
Dim dateLiteralDisplayField2 As New InputManCell.DateLiteralDisplayField("月")
Dim dateDayDisplayField1 As New InputManCell.DateDayDisplayField(False)
Dim dateLiteralDisplayField3 As New InputManCell.DateLiteralDisplayField("日 ")
Dim dateHourDisplayField1 As New InputManCell.DateHourDisplayField(False, False)
Dim dateLiteralDisplayField4 As New InputManCell.DateLiteralDisplayField("時")
Dim dateMinuteDisplayField1 As New InputManCell.DateMinuteDisplayField(False)
Dim dateLiteralDisplayField5 As New InputManCell.DateLiteralDisplayField("分")
Dim dateSecondDisplayField1 As New InputManCell.DateSecondDisplayField(False)
Dim dateLiteralDisplayField6 As New InputManCell.DateLiteralDisplayField("秒")
' フィールドをコレクションに追加してセルに表示書式を設定します。
GcDateTimeCellType.DisplayFields.AddRange(New InputManCell.DateDisplayField() { _
dateYearDisplayDield1, dateLiteralDisplayField1, dateMonthDisplayField1, _
dateLiteralDisplayField2, dateDayDisplayField1, dateLiteralDisplayField3, _
dateHourDisplayField1, dateLiteralDisplayField4, dateMinuteDisplayField1, _
dateLiteralDisplayField5, dateSecondDisplayField1, dateLiteralDisplayField6})
GcCalendarGrid1.Content(today).Rows(1).Cells(0).CellType = GcDateTimeCellType
GcCalendarGrid1.ScrollIntoView(today)
using InputManCell = GrapeCity.Win.CalendarGrid.InputMan;
var today = DateTime.Today;
var gcDateTimeCellType = new InputManCell.CalendarGcDateTimeCellType();
gcDateTimeCellType.Fields.Clear();
gcDateTimeCellType.DisplayFields.Clear();
// 入力フィールドのオブジェクトを作成します。
InputManCell.DateYearField dateYearField1 = new InputManCell.DateYearField(InputManCell.YearDigitType.FourDigitYear);
InputManCell.DateLiteralField dateLiteralField1 = new InputManCell.DateLiteralField("/");
InputManCell.DateMonthField dateMonthField1 = new InputManCell.DateMonthField(InputManCell.MonthPattern.Number);
InputManCell.DateLiteralField dateLiteralField2 = new InputManCell.DateLiteralField("/");
InputManCell.DateDayField dateDayField1 = new InputManCell.DateDayField();
InputManCell.DateLiteralField dateLiteralField3 = new InputManCell.DateLiteralField(" ");
InputManCell.DateHourField dateHourField1 = new InputManCell.DateHourField();
InputManCell.DateLiteralField dateLiteralField4 = new InputManCell.DateLiteralField(":");
InputManCell.DateMinuteField dateMinuteField1 = new InputManCell.DateMinuteField();
InputManCell.DateLiteralField dateLiteralField5 = new InputManCell.DateLiteralField(":");
InputManCell.DateSecondField dateSecondField1 = new InputManCell.DateSecondField();
// フィールドをコレクションに追加してセルに入力書式を設定します。
gcDateTimeCellType.Fields.AddRange(new InputManCell.DateField[] {
dateYearField1, dateLiteralField1, dateMonthField1,
dateLiteralField2, dateDayField1, dateLiteralField3,
dateHourField1, dateLiteralField4,dateMinuteField1,
dateLiteralField5, dateSecondField1});
// 表示フィールドのオブジェクトを作成します。
InputManCell.DateYearDisplayField dateYearDisplayDield1 = new InputManCell.DateYearDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField1 = new InputManCell.DateLiteralDisplayField("年");
InputManCell.DateMonthDisplayField dateMonthDisplayField1 = new InputManCell.DateMonthDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField2 = new InputManCell.DateLiteralDisplayField("月");
InputManCell.DateDayDisplayField dateDayDisplayField1 = new InputManCell.DateDayDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField3 = new InputManCell.DateLiteralDisplayField("日 ");
InputManCell.DateHourDisplayField dateHourDisplayField1 = new InputManCell.DateHourDisplayField(false, false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField4 = new InputManCell.DateLiteralDisplayField("時");
InputManCell.DateMinuteDisplayField dateMinuteDisplayField1 = new InputManCell.DateMinuteDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField5 = new InputManCell.DateLiteralDisplayField("分");
InputManCell.DateSecondDisplayField dateSecondDisplayField1 = new InputManCell.DateSecondDisplayField(false);
InputManCell.DateLiteralDisplayField dateLiteralDisplayField6 = new InputManCell.DateLiteralDisplayField("秒");
// フィールドをコレクションに追加してセルに表示書式を設定します。
gcDateTimeCellType.DisplayFields.AddRange(new InputManCell.DateDisplayField[] {
dateYearDisplayDield1, dateLiteralDisplayField1, dateMonthDisplayField1,
dateLiteralDisplayField2, dateDayDisplayField1, dateLiteralDisplayField3,
dateHourDisplayField1, dateLiteralDisplayField4, dateMinuteDisplayField1,
dateLiteralDisplayField5, dateSecondDisplayField1, dateLiteralDisplayField6});
gcCalendarGrid1.Content[today].Rows[1].Cells[0].CellType = gcDateTimeCellType;
// Valueプロパティにnullを設定します。
gcCalendarGrid1.Content[today].Rows[1].Cells[0].Value = null;
gcCalendarGrid1.ScrollIntoView(today);

(図) 上記サンプルコードを適用したCalendarGcDateTimeCellType
フィールドオブジェクトをDateFieldCollection または DateDisplayFieldCollection コレクションから削除するには、Removeメソッドまたは、RemoveAtメソッドを使用します。
次のサンプルコードは、DateDisplayFieldCollectionコレクションの先頭のフィールドを削除する例です。
' コレクションの先頭のオブジェクトを削除します。
Dim GcDateTimeCellType As GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType = DirectCast(GcCalendarGrid1.Content(Today).Rows(1).Cells(0).CellType, GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType)
GcDateTimeCellType.Fields.RemoveAt(0)
// コレクションの先頭のオブジェクトを削除します。
GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType gcDateTimeCellType = (GrapeCity.Win.CalendarGrid.InputMan.CalendarGcDateTimeCellType)gcCalendarGrid1.Content[DateTime.Today].Rows[1].Cells[0].CellType;
gcDateTimeCellType.Fields.RemoveAt(0);
入力フィールドオブジェクト
ここでは、CalendarGcDateTimeCellTypeの入力フィールドに設定可能な11種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
すべてのフィールドクラスに共通な設定
これらのプロパティは、CalendarGcDateTimeCellTypeのすべての入力フィールドオブジェクトに共通な設定項目です。
プロパティ |
説明 |
BackColor |
フィールド背景色を設定します。 |
Font |
フィールドに表示される文字列のフォントを設定します。 |
ForeColor |
フィールド背景色を設定します。 |
Margin |
フィールド領域の外枠の距離を設定します。 セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding |
フィールド領域からテキストの表示エリアまでの距離を設定します。 |
リテラル文字フィールド (DateLiteralField)
リテラル文字を設定します。
プロパティ |
説明 |
Text |
リテラル文字として表示する文字列を設定します。 |
年号入力フィールド (DateEraField)
年号を入力するフィールドです。
プロパティ |
説明 |
AutoDropDown |
フィールドがカレットが移動されたときに自動的にドロップダウンリストを表示するかどうか指定します。 |
DropDownEnabled |
フィールドに設定可能な値をドロップダウンリストで表示できるようにするかどうか設定します。 |
Pattern |
年号を表す文字列を設定します。 (GrapeCity.Win.Editors.EraPattern型) EraPattern.EraName のときは、年号を正式名称で表示、EraPattern.AbbreviatedEraName のときは、年号の頭文字を表示、EraPattern.Symbol のときは、年号を記号で表示します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
和暦入力フィールド (DateEraYearField)
和暦年を入力するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
年入力フィールド (DateYearField)
西暦の年を入力するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
TwoDigitYearMax |
西暦2桁入力時の有効期間(100年間)の最後の年を取得または設定します。 |
YearDigit |
西暦の表示桁数を設定します。 (GrapeCity.Win.Editors.YearDigitType型 YearDigitType.FourDigitYear のときは、年を4桁で表示します。YearDigitType.TwoDigitYear のときは、年を2桁で表示します。 |
月入力フィールド (DateMonthField)
月を入力するフィールドです。
プロパティ |
説明 |
AutoDropDown |
フィールドがカレットが移動されたときに自動的にドロップダウンリストを表示するかどうか指定します。 |
DropDownEnabled |
フィールドに設定可能な値をドロップダウンリストで表示できるようにするかどうか設定します。 |
Pattern |
月を表す文字列を設定します。 (GrapeCity.Win.Editors.MonthPattern型) MonthPattern.MonthName のときは、月を正式名称で表示します。(DateTimeFormatInfo.MonthNames()で指定された形式) MonthPattern.AbbreviatedMonthName のときは、月を月を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedMonthNames() で指定された形式) MonthPattern.Number のときは、月を2桁の数字で表示(先頭に0を付ける)します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
日入力フィールド (DateDayField)
日を入力するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
午前/午後入力フィールド (DateAmPmField)
時刻の午前/午後を入力するフィールドです。
プロパティ |
説明 |
AMDesignator |
午前を表す文字列を設定します。 |
Pattern |
午前/午後を表す文字の表示方法を設定します。(GrapeCity.Win.Editors.AmPmPattern型) AmPmDesignator.AmPmDesignator のときは、AMDesignatorまたはPMDesignatorで表される文字列、AmPmDesignator.AbbreviatedAmPmDesignatorで表わされる文字列の最初の1文字。 |
PMDesignator |
午後を表す文字列を設定します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
12時間制時刻入力フィールド (DateShortHourField)
12時間制の時刻を入力するフィールドです。
プロパティ |
説明 |
Hour12Mode |
12時間の範囲を定義する値を取得または設定します。(GrapeCity.Win.Editors.Hour12Mode型) Hour12Mode.Hour12As0 のときは、表示範囲を 「00:00:00 ~ 11:59:59」 にします。Hour12Mode.Hour0As12 表示範囲を 「01:00:00 ~ 12:59:59」 にします。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
時入力フィールド (DateHourField)
時刻の時を入力するフィールドです。
プロパティ |
説明 |
MidnightAs24 |
真夜中の表示方法を取得または設定します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
分入力フィールド (DateMinuteField)
時刻の分を入力するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
秒入力フィールド (DateSecondField)
時刻の秒を入力するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
SpinIncrement |
スピン機能により日付を増減する値を設定します。 |
表示フィールドオブジェクト
ここでは、CalendarGcDateTimeCellTypeの表示フィールドに設定可能な14種類のフィールドについて、すべてのフィールドに共通な設定項目と各フィールドに特化した設定項目にわけて解説します。
すべてのフィールドクラスに共通な設定
これらのプロパティは、CalendarGcDateTimeCellTypeのすべての表示フィールドオブジェクトに共通な設定項目です。
プロパティ |
説明 |
BackColor |
フィールド背景色を設定します。 |
Font |
フィールドに表示される文字列のフォントを設定します。 |
ForeColor |
フィールド背景色を設定します。 |
Margin |
フィールド領域の外枠の距離を設定します。 セルの境界線からの距離や、他のフィールドとの間隔を設定する際に使用します。 |
Padding |
フィールド領域からテキストの表示エリアまでの距離を設定します。 |
リテラル文字表示フィールド (DateLiteralDisplayField)
リテラル文字を設定します。
プロパティ |
説明 |
Text |
リテラル文字として表示する文字列を設定します。 |
年号表示フィールド (DateEraDisplayField)
年号を表示するフィールドです。
プロパティ |
説明 |
Pattern |
年号を表す文字列を設定します。 (GrapeCity.Win.Editors.EraPattern型) EraPattern.EraName のときは、年号を正式名称で表示、EraPattern.AbbreviatedEraName のときは、年号の頭文字を表示、EraPattern.Symbol のときは、年号を記号で表示します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
和暦表示フィールド (DateEraYearDisplayField)
和暦年を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
ShowTraditionalFirstYear |
開始年を元と表示するかどうか設定します。 |
西暦表示フィールド (DateADDisplayField)
紀元後を表すA.D.を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
年表示フィールド (DateYearDisplayField)
西暦の年を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
YearDigit |
西暦の表示桁数を設定します。 (GrapeCity.Win.Editors.YearDigitType型 YearDigitType.FourDigitYear のときは、年を4桁で表示します。YearDigitType.TwoDigitYear のときは、年を2桁で表示します。 |
月表示フィールド (DateMonthDisplayField)
月を表示するフィールドです。
プロパティ |
説明 |
Pattern |
月を表す文字列を設定します。 (GrapeCity.Win.Editors.MonthPattern型) MonthPattern.MonthName のときは、月を正式名称で表示します。(DateTimeFormatInfo.MonthNames()で指定された形式) MonthPattern.AbbreviatedMonthName のときは、月を月を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedMonthNames() で指定された形式) MonthPattern.Number のときは、月を2桁の数字で表示(先頭に0を付ける)します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
日表示フィールド (DateDayDisplayField)
日を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
曜日表示フィールド (DateWeekdayDisplayField)
曜日を表示するフィールドです。
プロパティ |
説明 |
Pattern |
曜日を表す文字列を設定します。 (GrapeCity.Win.Editors.WeekdayPattern型) MonthPattern.MonthName のときは、曜日を正式名称で表示します。 (DateTimeFormatInfo.DayNames()で指定された形式) MonthPattern.AbbreviatedMonthName のときは、曜日を省略形で表示します。 (DateTimeFormatInfo.AbbreviatedDayNames()で指定された形式)
|
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
午前/午後表示フィールド (DateAmPmDisplayField)
時刻の午前/午後を表示するフィールドです。
プロパティ |
説明 |
AMDesignator |
午前を表す文字列を設定します。 |
Pattern |
午前/午後を表す文字の表示方法を設定します。(GrapeCity.Win.Editors.AmPmPattern型) AmPmDesignator.AmPmDesignator のときは、AMDesignatorまたはPMDesignatorで表される文字列、AmPmDesignator.AbbreviatedAmPmDesignatorで表わされる文字列の最初の1文字。 |
PMDesignator |
午後を表す文字列を設定します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
12時間制時刻表示フィールド (DateShortHourDisplayField)
12時間制の時刻を表示するフィールドです。
プロパティ |
説明 |
Hour12Mode |
12時間の範囲を定義する値を取得または設定します。(GrapeCity.Win.Editors.Hour12Mode型) Hour12Mode.Hour12As0 のときは、表示範囲を 「00:00:00 ~ 11:59:59」 にします。Hour12Mode.Hour0As12 表示範囲を 「01:00:00 ~ 12:59:59」 にします。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
時表示フィールド (DateHourDisplayField)
時刻の時を表示するフィールドです。
プロパティ |
説明 |
MidnightAs24 |
真夜中の表示方法を取得または設定します。 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
分表示フィールド (DateMinuteDisplayField)
時刻の分を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
秒表示フィールド (DateSecondDisplayField)
時刻の秒を表示するフィールドです。
プロパティ |
説明 |
PromptChar |
値が入力されていないときに表示するプロンプト文字を設定します。 |
ShowLeadingZero |
値が1桁のとき先頭に0をつけるかどうか設定します。 |
システム書式表示フィールド (DateSystemFormatDisplayField)
システムで定義された書式指定子を使用して日付または時刻の書式を設定します。
プロパティ |
説明 |
Pattern |
書式を表す書式指定子を設定します。 (String型) 下表の書式指定子を設定することができます。 |
PromptChar
|
値が入力されていないときに表示するプロンプト文字を設定します。 |
Patternプロパティに設定可能な書式指定子
書式指定子 |
説明 |
d |
短い形式の日付 (例:2012/04/01) |
D |
長い形式の日付 (例:2012年4月1日) |
t |
短い形式の時刻 (例:1:30) |
T |
長い形式の時刻 (例:1:30:00) |
f |
長い形式の日付と短い形式の時刻 (例:2012年4月1日 1:30) |
F |
長い形式の日付と長い形式の時刻 (例:2012年4月1日 1:30:00) |
g |
短い形式の日付と短い形式の時刻 (例:2012/04/01 1:30) |
G |
短い形式の日付と長い形式の時刻 (例:2012/04/01 1:30:00) |
Mまたはm |
月日の表示 (例:4月1日) |
Oまたはo |
ラウンドトリップ形式 (例:2012-04-01T01:30:00.0000000) |
Rまたはr |
RFC1123の形式 (例:Sun, 01 Apr 2012 01:30:00 GMT) |
s |
ISO 8601準拠の形式 (例:2012-04-01T01:30:00) |
u |
ユニバーサル形式 (例:2012-04-01 01:30:00Z) |
U |
世界協定時刻 (例:2012年3月31日 16:30:00) |
Yまたはy |
年月の表示 (例:2012年4月) |
参照