AlternateTextプロパティを使用すれば、セルが未入力(GcTimeSpanCell.Value)のときに代わりに表示するテキストを文字列として設定することができます。

(図) 代替テキストを表示したGcTimeSpanCell
AlternateTextプロパティは、TimeSpanAlternateTextオブジェクトを参照し、TimeSpanAlternateTextクラスのプロパティを使用して以下の代替テキストを設定できます。
プロパティ |
代替テキストの内容 |
DisplayNull |
コントロールにフォーカスがなく、未入力のときの代替テキスト |
DisplayZero |
コントロールにフォーカスがなく、値が0のときの代替テキスト |
Null |
コントロールにフォーカスがあり、未入力のときの代替テキスト |
Zero |
コントロールにフォーカスがあり、値が0のときの代替テキスト |
これらのプロパティはAlternateTextクラスを参照し、次の2つを設定することができます。
次のサンプルコードは、代替テキストを設定する例です。
Imports GrapeCity.Win.MultiRow
Imports InputManCell = GrapeCity.Win.MultiRow.InputMan
Dim GcTimeSpanCell1 As New InputManCell.GcTimeSpanCell()
GcTimeSpanCell1.Size = New Size(150, 20)
' フォーカスがないときの代替テキスト
GcTimeSpanCell1.AlternateText.DisplayNull.Text = "日数を入力してください"
GcTimeSpanCell1.AlternateText.DisplayNull.ForeColor = Color.Gray
GcTimeSpanCell1.AlternateText.DisplayZero.Text = "0日は無効です"
GcTimeSpanCell1.AlternateText.DisplayZero.ForeColor = Color.Pink
' フォーカスがあるときの代替テキスト
GcTimeSpanCell1.AlternateText.Null.Text = "実施期間を入力してください"
GcTimeSpanCell1.AlternateText.Null.ForeColor = Color.Red
GcTimeSpanCell1.AlternateText.Zero.Text = "1日以上を入力してください"
GcTimeSpanCell1.AlternateText.Zero.ForeColor = Color.Red
GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcTimeSpanCell1})
GcMultiRow1.RowCount = 5
using GrapeCity.Win.MultiRow;
using InputManCell = GrapeCity.Win.MultiRow.InputMan;
InputManCell.GcTimeSpanCell gcTimeSpanCell1 = new InputManCell.GcTimeSpanCell();
gcTimeSpanCell1.Size = new Size(150, 20);
// フォーカスがないときの代替テキスト
gcTimeSpanCell1.AlternateText.DisplayNull.Text = "日数を入力してください";
gcTimeSpanCell1.AlternateText.DisplayNull.ForeColor = Color.Gray;
gcTimeSpanCell1.AlternateText.DisplayZero.Text = "0日は無効です";
gcTimeSpanCell1.AlternateText.DisplayZero.ForeColor = Color.Pink;
// フォーカスがあるときの代替テキスト
gcTimeSpanCell1.AlternateText.Null.Text = "実施期間を入力してください";
gcTimeSpanCell1.AlternateText.Null.ForeColor = Color.Red;
gcTimeSpanCell1.AlternateText.Zero.Text = "1日以上を入力してください";
gcTimeSpanCell1.AlternateText.Zero.ForeColor = Color.Red;
gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcTimeSpanCell1 });
gcMultiRow1.RowCount = 5;
ShowRecommendedValueプロパティを使用すると、GcTimeSpanCellで値が未入力のとき、入力候補となる値をグレー表示することができます。
入力候補として表示されたタイムスパンの値は、表示された候補値のまま適用するか、その一部もしくは全ての値を変更して入力値として適用することができます。
入力候補として表示される値は、RecommendedValueプロパティで設定します。
候補として表示された値を確定するには、[Ctrl]+[Enter]キーを押下します。



(図) 入力候補値を変更せずに値を確定



(図) 入力候補値から値の一部を変更して値を確定
HighlightTextプロパティを使用すると、フォーカスを受け取ったときのテキストの選択状態を設定することができます。HighlightText.Allの場合は、セルのすべてのテキストが選択状態になります。HighlightText.Fieldの場合は、セル内のフィールドの1つを選択状態にすることができます。
HighlightTextの値 |
カレットまたはフィールドの状態 |
None |
カレットは、DefaultActiveFieldプロパティで指定したフィールドの最初に位置します。DefaultActiveFieldプロパティが既定値のときは、カレットの位置は、SelectionStartプロパティとSelectionLengthプロパティの設定で決まります。 |
Field |
DefaultActiveFieldプロパティで指定したフィールドが選択状態になります。DefaultActiveFieldプロパティが既定値のときは、SelectionStartプロパティで設定された文字以降の最初のフィールドが選択状態になります。SelectionStart以降がすべてリテラル文字の場合は、前のフィールドが選択状態になります。 |
All |
DefaultActiveFieldプロパティの設定に関わらず、セル内のすべての内容が選択状態になります。 |