GcDateTimeCell では様々な視覚的な補助機能を提供しています。この章ではそれらの機能について解説します。
AlternateTextプロパティを使用すれば、セルが未入力(GcDateTimeCell.Value)のときや和暦表示できない日付が設定された場合に代わりに表示するテキストを文字列として設定することができます。
(図) 代替テキストを表示したGcDateTimeCell
AlternateTextプロパティは、DateAlternateTextオブジェクトを参照し、DateAlternateText クラスのプロパティを使用して以下の代替テキストを設定できます。
プロパティ | 代替テキストの内容 |
---|---|
DisplayNull | セルにフォーカスがなく、未入力のときの代替テキスト |
DisplayEmptyEra | セルにフォーカスがなく、その値が和暦表示できないときの代替テキスト |
Null | セルにフォーカスがあり、未入力のときの代替テキスト |
EmptyEra | セルにフォーカスがあり、その値が和暦表示できないときの代替テキスト |
|
これらのプロパティはAlternateTextクラスを参照し、次の2つを設定することができます。
次のサンプルコードは、代替テキストを設定する例です。
Imports GrapeCity.Win.MultiRow Imports InputManCell = GrapeCity.Win.MultiRow.InputMan Dim GcDateTimeCell1 = New InputManCell.GcDateTimeCell() GcDateTimeCell1.Name = "GcDateTimeCell1" GcDateTimeCell1.Size = New Size(180, 20) ' フォーカスがないときの代替テキスト GcDateTimeCell1.AlternateText.DisplayNull.Text = "生年月日を入力してください" GcDateTimeCell1.AlternateText.DisplayNull.ForeColor = System.Drawing.Color.LightSeaGreen GcDateTimeCell1.AlternateText.DisplayEmptyEra.Text = "和暦表示ができません" GcDateTimeCell1.AlternateText.DisplayEmptyEra.ForeColor = System.Drawing.Color.Gray ' フォーカスがあるときの代替テキスト GcDateTimeCell1.AlternateText.Null.Text = "和暦で入力してください" GcDateTimeCell1.AlternateText.Null.ForeColor = System.Drawing.Color.LightPink GcDateTimeCell1.AlternateText.EmptyEra.Text = "和暦表示ができません" GcDateTimeCell1.AlternateText.EmptyEra.ForeColor = System.Drawing.Color.Red ' MultiRowのテンプレートを設定します。 GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcDateTimeCell1}) GcMultiRow1.RowCount = 5
using GrapeCity.Win.MultiRow; using InputManCell = GrapeCity.Win.MultiRow.InputMan; InputManCell.GcDateTimeCell gcDateTimeCell1 = new InputManCell.GcDateTimeCell(); gcDateTimeCell1.Name = "gcDateTimeCell1"; gcDateTimeCell1.Size = new Size(180, 20); // フォーカスがないときの代替テキスト gcDateTimeCell1.AlternateText.DisplayNull.Text = "生年月日を入力してください"; gcDateTimeCell1.AlternateText.DisplayNull.ForeColor = System.Drawing.Color.LightSeaGreen; gcDateTimeCell1.AlternateText.DisplayEmptyEra.Text = "和暦表示ができません"; gcDateTimeCell1.AlternateText.DisplayEmptyEra.ForeColor = System.Drawing.Color.Gray; // フォーカスがあるときの代替テキスト gcDateTimeCell1.AlternateText.Null.Text = "和暦で入力してください"; gcDateTimeCell1.AlternateText.Null.ForeColor = System.Drawing.Color.LightPink; gcDateTimeCell1.AlternateText.EmptyEra.Text = "和暦表示ができません"; gcDateTimeCell1.AlternateText.EmptyEra.ForeColor = System.Drawing.Color.Red; gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcDateTimeCell1 }); gcMultiRow1.RowCount = 5;
ShowRecommendedValueプロパティを使用すると、GcDateTimeCellで値が未入力のとき、入力候補となる値をグレー表示することができます。
入力候補として表示された日付の値は、表示された候補値のまま適用するか、フィールドの一部もしくは全ての値を変更して入力値として適用することができます。入力候補として表示される値は、非表示フィールドのデフォルト値としても使用される、RecommendedValueプロパティで設定します。
候補として表示された値を確定するには、[Ctrl]+[Enter]キーを押下します。
(図) 入力候補値を変更せずに値を確定
(図) 入力候補値から日付だけ変更して値を確定
HighlightTextプロパティを使用すると、フォーカスを受け取ったときのテキストの選択状態を設定することができます。HighlightText.Allの場合は、セルのすべてのテキストが選択状態になります。HighlightText.Fieldの場合は、セル内のフィールドの1つを選択状態にすることができます。
HighlightTextの値 | カレットまたはフィールドの状態 |
---|---|
None | カレットは、DefaultActiveFieldプロパティで指定したフィールドの最初に位置します。 |
Field | DefaultActiveFieldプロパティで指定したフィールドが選択状態になります。 |
All | DefaultActiveFieldプロパティの設定に関わらず、セル内のすべての内容が選択状態になります。 |